Aracılığıyla paylaş


Service Mesh iletişim altyapısı

İpucu

Bu içerik, .NET Docs'ta veya çevrimdışı olarak okunabilen ücretsiz indirilebilir bir PDF olarak sağlanan Azure için Buluta Özel .NET Uygulamaları Tasarlama adlı e-Kitap'tan bir alıntıdır.

Cloud Native .NET apps for Azure eBook cover thumbnail.

Bu bölüm boyunca mikro hizmet iletişiminin zorluklarını inceledik. Geliştirme ekiplerinin arka uç hizmetlerinin birbirleriyle nasıl iletişim kuracağı konusunda hassas olması gerektiğini belirttik. İdeal olarak, ne kadar az hizmet arası iletişim, o kadar iyi. Ancak, arka uç hizmetleri işlemleri tamamlamak için genellikle birbirine bağlı olduğundan kaçınma her zaman mümkün değildir.

Zaman uyumlu HTTP iletişimi ve zaman uyumsuz mesajlaşma uygulamak için farklı yaklaşımları inceledik. Her durumda, geliştirici iletişim kodunu uygulamaktan sorumludur. İletişim kodu karmaşıktır ve zaman açısından yoğundur. Yanlış kararlar önemli performans sorunlarına yol açabilir.

Service Mesh adlı yeni ve hızla gelişen bir teknoloji etrafında mikro hizmet iletişim merkezlerine daha modern bir yaklaşım. Hizmet ağı, hizmetlerden hizmete iletişimi, dayanıklılığı ve birçok çapraz kesme endişesini işlemeye yönelik yerleşik özelliklere sahip yapılandırılabilir bir altyapı katmanıdır. Bu endişelerin sorumluluğunu mikro hizmetlerin dışına ve hizmet ağı katmanına taşır. İletişim, mikro hizmetlerinizden soyutlanır.

Hizmet ağı temel bileşenlerinden biri ara sunucudur. Bulutta yerel bir uygulamada, bir ara sunucu örneği genellikle her mikro hizmetle birlikte bulunur. Bunlar ayrı işlemlerde yürütülürken, ikisi birbirine yakından bağlanır ve aynı yaşam döngüsünü paylaşır. Sepet deseni olarak bilinen bu desen Şekil 4-24'te gösterilmiştir.

Service mesh with a side car

Şekil 4-24. Yan araba ile servis ağı

Önceki şekilde, iletilerin her mikro hizmetle birlikte çalışan bir ara sunucu tarafından nasıl kesildiğini not edin. Her ara sunucu, mikro hizmete özgü trafik kurallarıyla yapılandırılabilir. İletileri anlar ve bunları hizmetlerinize ve dış dünyaya yönlendirebilir.

Hizmet-hizmet iletişimini yönetmenin yanı sıra Service Mesh, hizmet bulma ve yük dengeleme desteği sağlar.

Bir hizmet ağı yapılandırıldıktan sonra yüksek oranda işlevseldir. Ağ, bir hizmet bulma uç noktasından karşılık gelen örnek havuzunu alır. Belirli bir hizmet örneğine, sonucun gecikme süresini ve yanıt türünü kaydeden bir istek gönderir. Son istekler için gözlemlenen gecikme süresi de dahil olmak üzere farklı faktörlere göre hızlı yanıt döndürme olasılığı en yüksek olan örneği seçer.

Hizmet ağı, trafik, iletişim ve ağ sorunlarını uygulama düzeyinde yönetir. İletileri ve istekleri anlar. Hizmet ağı genellikle bir kapsayıcı düzenleyicisiyle tümleşir. Kubernetes, hizmet ağı eklenebilen genişletilebilir bir mimariyi destekler.

6. bölümde, mimarisi ve kullanılabilir açık kaynak uygulamaları hakkında bir tartışma da dahil olmak üzere Service Mesh teknolojilerini ayrıntılı olarak ele alıyoruz.

Özet

Bu bölümde bulutta yerel iletişim desenlerini ele aldık. Ön uç istemcilerinin arka uç mikro hizmetleriyle nasıl iletişim kuracaklarını inceleyerek başladık. Bu arada API Gateway platformları ve gerçek zamanlı iletişim hakkında konuştuk. Ardından mikro hizmetlerin diğer arka uç hizmetleriyle nasıl iletişim kuracaklarını inceledik. Hizmetler arasında hem zaman uyumlu HTTP iletişimlerini hem de zaman uyumsuz mesajlaşmayı inceledik. Buluta özel dünyada yaklaşan bir teknoloji olan gRPC'yi ele aldık. Son olarak, mikro hizmet iletişimlerini kolaylaştırabilen Service Mesh adlı yeni ve hızlı gelişen bir teknoloji kullanıma sunulmuştur.

Bulutta yerel sistemlerde iletişimin uygulanmasına yardımcı olabilecek yönetilen Azure hizmetlerine özel vurgu yapıldı:

Bir sonraki adımda buluta özel sistemlerdeki dağıtılmış verilere ve sunduğu avantajlara ve zorluklara geçeceğiz.

Başvurular