Microservice’ler Arasında İletişim

Microservice mimari metodolojisi gereği birbirinden ayrı servisler barındırır ama bu servislerinde birbirleri ile konuşmaları gerekmektedir. Bu servislerin kendi aralarında konuşurken en doğru yöntem ile konuşmaları gerekir.

Alışageldiğimiz monolotik mimarilerde, eğer message broker teknolojileri kullanmıyorsak back-end tarafındaki tüm süreçler genellikle senkron olarak istekleri tamamlamaktadır.

Günümüzde en sık karşılaştığımız Microservice mimarileri, e-ticaret sitelerinde kullanılmaktadır. Bu mimariler ile yazılım geliştirme süreçleri, yüksek trafik gibi bir çok sorunu çözsede, mimari aşamada bu servislerin kendi içinde konuşmasını iyi bir şekilde analiz edip, çözüme karar vermek gerekiyor.

Microservice mimari içinde isteklere senkron veya asenkron olmasına karar vermeliyiz.

Bir istekte bulunduğumuzda o isteğin cevaplanmasını bekliyorsak senkron iletişim, eğer beklemiyorsak asenkron bir iletişim kurarız. Eğer asenkron iletişim kuracaksak RabbitMQ vb message broker teknolojileri ihtiyaç duyarız.

Her iki iletişiminde kullanım yerlerini iyi seçmemiz gerekiyor.

Senkron iletişimin genellikle kullanım yeri UI’da bir veri göstermek istiyorsak, servisin hemen cevap vermesini bekleyebiliriz.

Asenkron iletişimde ise bir üyelik sonuçunda kullanıcıya e-posta göndermemiz gerekiyorsa bunun hemen cevap vermesini beklemeyebiliriz. Diğer bir senaryo ise bir excel belgesini pdf çevirmek istiyorsak, ilgili servise gönderip, işlem tamamlandığında bir notification ile bildirip indirmesini sağlayabiliriz.

Microservice’ler Arasında İletişim” hakkında 1 yorum

  1. Geri izleme: Microservice Mimarilerinde Message Broker Üzerinde Message ve Event Farkı - Hüseyin Yıldırım

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir