Sektörden Haberler

“Outbox Pattern” Nedir?

17 Mart 2026 Salı


Outbox Pattern, mikroservis mimarilerinde veri tabanı işlemleri ile event yayınlama süreçleri arasında tutarlılığı garanti altına almak için kullanılan bir tasarım desenidir. Temel problem şudur: Bir servis hem veritabanına yazıp hem de bir mesaj kuyruğuna event göndermek ister; ancak bu iki işlem atomik değildir. Biri başarılı olup diğeri başarısız olursa sistem tutarsız hale gelir. Outbox Pattern bu riski ortadan kaldırır.

Bu desende, servis doğrudan mesaj kuyruğuna event göndermek yerine, aynı veritabanı transaction’ı içinde bir “outbox” tablosunaevent kaydı yazar. Yani iş verisi ve gönderilecek event tek bir atomik işlemde kalıcı hale getirilir. Daha sonra ayrı bir süreç (worker veya CDC mekanizması) bu outbox tablosunu okuyarak event’leri mesaj kuyruğuna iletir.

Bu yaklaşım sayesinde “veri yazıldı ama event gönderilemedi” veya “event gönderildi ama veri yazılmadı” gibi tutarsızlıklar ortadan kalkar. Outbox Pattern genellikle polling publisher veya Change Data Capture (CDC) yöntemleriyle uygulanır. Özellikle Kafka gibi sistemlerle birlikte kullanıldığında oldukça güçlü ve güvenilir bir veri akışı sağlar.

Kısacası Outbox Pattern, dağıtık sistemlerde veri ve event akışını senkronize eden bir güvenlik katmanıdır. Sistemler arası iletişimde “en az bir kez iletim” (at-least-once delivery) garantisini sağlarken, veri kaybı riskini minimize eder. Bu da özellikle finansal işlemler ve kritik iş akışları için vazgeçilmez bir yaklaşımdır.