Page 188 - Yazılım Teknolojileri Araştırma Bülteni 2023
P. 188
188 | Mikroservis Mimarisi: İletişim
Monolit ve Mikroservis Mimarisinde
Iletişim Zorluğu
Mikroservis mimarisi ile uygulama geliştirme ve dağıtımı, köklü bir şekilde değişmiştir. Fakat bu
değişiklik, özellikle servisler arası iletişim konusunda kendi zorluklarını da beraberinde getirdi.
Örneğin:
• Monolitik mimaride, tüm işlemler bir merkezden kontrol edilir. Bir hata, tüm sistem için
probleme yol açabilir.
• Monolitik mimaride, tüm uygulama tek bir blok olarak ölçeklenir. Bu, belirli bir bileşenin
(örneğin, veri tabanı erişimi) aşırı yüklenmesi durumunda, tüm sistemi etkileyebilir.
• Bileşenler arası yüksek bağımlılık, bir bileşende değişiklik yapılması veya güncellenmesi, diğer
bileşenlerin etkilenme riskini artırır.
• Tek bir kod tabanı üzerinde çalışıldığı için farklı teknolojileri veya dilleri entegre etmek
genellikle daha zor olabilir.
Eş Zamanlı Iletişim
Eş zamanlı (senkron) iletişim, bir işlemin bir diğerini beklediği iletişim tarzıdır. Pratikte bu durum,
“sor ve yanıt bekle” modeline benzer. Yani bir işlem (ya da bir ‘servis’ ya da ‘modül’ gibi düşünebiliriz)
başka bir işlemden bir şey yapmasını istediğinde, yanıt alana kadar bekler. Yanıt geldiğinde, işlem
tamamlanır ve ilk işlem devam eder.
Neden Eş Zamanlı Iletişime Ihtiyaç Duyarız?
Mikroservis mimarisinde, eş zamanlı iletişim, bazı durumlarda kaçınılmaz ve oldukça değerli bir
yaklaşım olarak öne çıkmaktadır. Bu yaklaşım, hızlı ve anlık geri bildirim sağlama, sıralı iş akışlarını
kolaylaştırma, programlama karmaşıklığını azaltma, güvenilir hata raporlama ve veri tutarlılığı gibi
önemli avantajlar sunar.
• Hızlı Geri Bildirim: Mikroservisler arası eş zamanlı iletişim, bir servisten diğerine, hızlı talep
ve anında yanıt sağlayarak kullanıcı deneyimini iyileştirir. Yani kullanıcılar bir işlem yaptığında
sistem hemen başarı durumunu bildirir ve telefon görüşmesindeki gibi akıcı ve etkili bir
iletişimi temsil eder.
• Sıralı Iş Akışları: Eş zamanlı iletişim, sıralı iş akışları için bir servisin başkasının işlemini
beklemesini sağlar. Bu, telefon görüşmesinde bir konudan diğerine geçmek gibi işler. Örneğin,
restoranda masa rezervasyonu yaparken, ilk önce müsaitlik durumu sorgulanır ve sonrasında
hareket edilir.