Transaction’lar uygulamalarımızın önemli birer parçasıdır. Eğer transaction’lar olmasaydı veri tutarlılığını sağlamamız imkansız olurdu.

Veri tutarlılığını sağlayan çözümlerden birisi daha önceki makalemde bahsettiğim 2PC Pattern’dir. Bu pattern’de tüm akışı yönettiğimiz genel transaction içinde ikinci bir işlemin çalışması için ilk işlemin başarıyla tamamlanmış olması gereklidir. Örnek vermek gerekirse, bir e-ticaret sitesindeki siparişin oluşturulma sürecini verebiliriz.

Ancak, Microservice mimarisinde çalışıyorsak bilindiği üzere her servisin kendi veritabanı vardır ve 2PC Pattern ile tüm sistemdeki veri tutarlılığını sağlamamız biraz zorlaşacaktır.

2PC Pattern ilgili service özelinde tek bir istek ile ACID prensiplerini yerine getirmeye çalışır. Veri tutarlılığının önemli olduğu yerlerde kullanılır. SAGA ise birbirini bekleyen sıralı…

Sefik Can Kanber

Senior Software Developer

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store