İleti aracısı ve olayları kullanarak kurumsal tümleştirme

Azure Event Grid
Azure Service Bus

Bu örnek mimari, Temel kurumsal tümleştirme mimarisi üzerine kurulmuştur. Daha fazla ölçeklenebilirlik ve güvenilirlik için hizmetleri ayrıştırmak için ileti aracılarını ve olayları kullanarak kurumsal arka uç sistemlerinin nasıl tümleştirildiğini göstermek için bu mimariyi genişletir. Bu tasarıma ve temel tümleştirme mimarisinde kullanılan bileşenlere aşina olduğunuzdan emin olun. Bu mimarinin temel bileşenleri hakkında temel bilgiler sağlar ve bu bileşenler burada yeniden üretilmeyecektir.

Mimari

Bu tasarımda başvuruda bulunılan arka uç sistemleri hizmet olarak yazılım (SaaS) sistemlerini, Azure hizmetlerini ve kuruluşunuzdaki mevcut web hizmetlerini içerebilir.

Reference architecture for enterprise integration using queues and events

Bu mimarinin bir Visio dosyasını indirin.

Workflow

Burada gösterilen mimari, Temel kurumsal tümleştirmede gösterilen daha basit bir mimariyi temel alır. Bu mimaride iş akışlarını doğrudan arka uç sistemleriyle ve API Management ile düzenleyip API katalogları oluşturmak için Logic Apps kullanılır.

Mimarinin bu sürümü, sistemi daha güvenilir ve ölçeklenebilir hale getirmesine yardımcı olan iki bileşen ekler:

İleti aracısı kullanan zaman uyumsuz iletişim, arka uç hizmetlerine doğrudan, zaman uyumlu çağrılar yapma konusunda aşağıdaki avantajları sağlar:

  • Kuyruk Tabanlı Yük Dengeleme desenini kullanarak iş yüklerindeki artışları işlemek için yük dengeleme sağlar.
  • Publisher-Abone desenini kullanarak iletilerin birden çok tüketiciye yayınlanması için sağlar.
  • Birden çok adım veya birden çok uygulama içeren uzun süre çalışan iş akışlarının ilerleme durumunu güvenilir bir şekilde izler.
  • Uygulamaların ayrıştırılmalarına yardımcı olur.
  • Mevcut ileti tabanlı sistemlerle tümleşir.
  • Arka uç sistemi kullanılabilir olmadığında işin kuyruğa alınmasına izin verir.

Event Grid, sistemdeki çeşitli bileşenlerin yoklamaya veya zamanlanmış görevlere güvenmek yerine olaylara oldukları gibi tepki vermelerini sağlar. bir ileti kuyruğu ve konu başlığında olduğu gibi, uygulama ve hizmetlerin ayrıştırılmalarına yardımcı olur. Bir uygulama veya hizmet olayları yayımlayabilir ve ilgili abonelere bildirim gönderilir. Gönderen güncelleştirilmeden yeni aboneler eklenebilir.

Birçok Azure hizmeti Event Grid'e olay göndermeyi destekler. Örneğin, bir mantıksal uygulama blob deposuna yeni dosyalar eklendiğinde bir olayı dinleyebilir. Bu düzen, bir dosyayı karşıya yüklemenin veya kuyruğa ileti yerleştirmenin bir dizi işlemi başlattığı reaktif iş akışlarını etkinleştirir. İşlemler paralel veya belirli bir sırada yürütülebilir.

Öneriler

Temel kurumsal tümleştirmede açıklanan öneriler bu mimari için geçerlidir.

Service Bus

Service Bus' ın çekme veya proksit gönderme şeklinde iki teslim modu vardır. Çekme modelinde, alıcı sürekli olarak yeni iletileri yoklar. Özellikle her biri birkaç ileti alan çok sayıda kuyruğunuz varsa veya iletiler arasında çok fazla zaman varsa yoklama verimsiz olabilir. Prxied push modelinde Service Bus, yeni iletiler olduğunda Event Grid aracılığıyla bir olay gönderir. Alıcı olaya abonedir. Olay tetiklendiğinde, alıcı Service Bus'tan bir sonraki ileti toplu işlemini çeker.

Service Bus iletilerini kullanmak için bir mantıksal uygulama oluşturduğunuzda, Event Grid tümleştirmesi ile prxied anında iletme modelini kullanmanızı öneririz. Mantıksal uygulamanın Service Bus'ı yoklaması gerekmediğinden genellikle daha uygun maliyetlidir. Daha fazla bilgi için bkz . Azure Service Bus to Event Grid tümleştirmesine genel bakış. Şu anda Event Grid bildirimleri için Service Bus Premium katmanı gereklidir.

Bir ileti grubuna erişmek için PeekLock kullanın. PeekLock kullandığınızda, mantıksal uygulama iletiyi tamamlamadan veya bırakmadan önce her iletiyi doğrulamak için adımlar gerçekleştirebilir. Bu yaklaşım, yanlışlıkla ileti kaybına karşı koruma sağlar.

Event Grid

Event Grid tetikleyicisi tetiklendiğinde en az bir olay olduğu anlamına gelir. Örneğin, bir mantıksal uygulama Service Bus iletisi için Event Grid tetikleyicileri aldığında, birkaç iletinin işlenebileceğini varsaymalıdır.

Dikkat edilmesi gerekenler

Bu önemli noktalar, bir iş yükünün kalitesini artırmak için kullanılabilecek bir dizi yol gösteren ilke olan Azure İyi Tasarlanmış Çerçeve'nin yapı taşlarını uygular. Daha fazla bilgi için bkz . Microsoft Azure İyi Tasarlanmış Çerçeve.

Güvenilirlik

Güvenilirlik, uygulamanızın müşterilerinize sağladığınız taahhütleri karşılayabilmesini sağlar. Daha fazla bilgi için bkz . Güvenilirlik sütununa genel bakış.

Güvenlik

Güvenlik, kasıtlı saldırılara ve değerli verilerinizin ve sistemlerinizin kötüye kullanılmasına karşı güvence sağlar. Daha fazla bilgi için bkz . Güvenlik sütununa genel bakış.

Service Bus'ın güvenliğini sağlamak için yönetilen kimliklerle eşleştirilmiş Microsoft Entra kimlik doğrulamasını kullanın. Service Bus kaynakları için Microsoft Entra tümleştirmesi, istemcinin kaynaklara erişimi üzerinde ayrıntılı denetim için Azure rol tabanlı erişim denetimi (RBAC) sağlar. Kullanıcı, grup veya uygulama hizmet sorumlusu (bu örnekte yönetilen kimlik) olabilecek bir güvenlik sorumlusuna izin vermek için Azure RBAC kullanabilirsiniz.

Microsoft Entra Kimliği'nin kullanılamadığı durumlarda, paylaşılan erişim imzası (SAS) kullanabilirsiniz. SAS kimlik doğrulamasını kullanarak belirli haklara sahip Service Bus kaynaklarına bir kullanıcıya erişim vekleyebilirsiniz.

Bir Service Bus kuyruğu veya konusunu HTTP uç noktası olarak kullanıma sunmanız gerekiyorsa(örneğin, yeni iletiler göndermek için) uç noktayı önleyerek kuyruğun güvenliğini sağlamak için API Management'ı kullanın. Daha sonra sertifikalarla veya OAuth kimlik doğrulamasıyla uygun şekilde uç noktanın güvenliğini sağlayabilirsiniz. Bir uç noktanın güvenliğini sağlamanın en kolay yolu, aracı olarak HTTP isteği/yanıt tetikleyicisi olan bir mantıksal uygulama kullanmaktır.

Event Grid hizmeti bir doğrulama kodu aracılığıyla olay tesliminin güvenliğini sağlar. Olayı kullanmak için Logic Apps kullanırsanız doğrulama otomatik olarak gerçekleştirilir. Daha fazla bilgi için bkz . Event Grid güvenliği ve kimlik doğrulaması.

Ağ güvenliği

Tasarım boyunca ağ güvenliği dikkate alınmalıdır.

Maliyet İyileştirmesi

Maliyet iyileştirmesi, gereksiz giderleri azaltmanın ve operasyonel verimlilikleri iyileştirmenin yollarını aramaktır. Daha fazla bilgi için bkz . Maliyet iyileştirme sütununa genel bakış.

Genel olarak, maliyetleri tahmin etmek için Azure fiyatlandırma hesaplayıcısını kullanın. Burada dikkat edilmesi gereken diğer bazı noktalar bulunmaktadır.

API Management

Çalışırken tüm API Management örnekleri için ücretlendirilirsiniz. Ölçeği artırdıysanız ve her zaman bu performans düzeyine ihtiyacınız yoksa otomatik ölçeklendirmeyi el ile azaltın veya yapılandırın.

Hafif kullanım iş yükleri için düşük maliyetli, sunucusuz bir seçenek olan tüketim katmanını göz önünde bulundurun. Tüketim katmanı API çağrısı başına faturalandırılırken, diğer katmanlar saat başına faturalandırılır.

Logic Apps

Logic Apps sunucusuz bir model kullanır. Faturalama, eylem ve bağlayıcı yürütme temelinde hesaplanır. Daha fazla bilgi için bkz. Logic Apps fiyatlandırması.

Service Bus kuyrukları, konuları ve abonelikleri

Service Bus kuyrukları ve abonelikleri, iletileri teslim etmek için hem anında iletme hem de çekme modellerini destekler. Çekme modelinde, her yoklama isteği bir eylem olarak ölçülür. 30 sn'lik (varsayılan) uzun yoklamalarda bile maliyet yüksek olabilir. İletilerin gerçek zamanlı teslim edilmesine ihtiyacınız yoksa, prxied push modelini kullanmayı göz önünde bulundurun.

Service Bus kuyrukları tüm katmanlara (Temel, standart ve premium katmanlar) dahil edilir. Service Bus konuları ve abonelikleri standart ve premium katmanlarda kullanılabilir. Daha fazla bilgi için bkz . Azure Service Bus fiyatlandırması.

Event Grid

Event Grid sunucusuz bir model kullanır. Faturalama, işlem sayısına (olay yürütmeleri) göre hesaplanır. Olayların Etki Alanları veya Konu Başlıklarına girişi, gelişmiş eşleşmeler, teslim denemeleri ve yönetim çağrıları bu işlemlere dahildir. 100.000'e kadar işlemin kullanımı ücretsizdir.

Daha fazla bilgi için bkz . Event Grid fiyatlandırması.

Daha fazla bilgi için Microsoft Azure İyi Oluşturulmuş Mimari Çerçevesi makalesindeki maliyet bölümüne bakın.

Operasyonel Mükemmellik

Temel Kurumsal Tümleştirme başvuru mimarisi, İyi Tasarlanmış Çerçeve'nin Operasyonel Mükemmellik sütununa uygun DevOps desenleri hakkında rehberlik sağlar.

Kurtarma işlemlerini mümkün olduğunca otomatikleştirmek Operasyonel Mükemmellik'in ayrılmaz bir bileşenidir. Otomasyonu göz önünde bulundurarak Azure Günlük İzleme'yi Azure Otomasyonu ile birleştirerek Service Bus kaynaklarınızın yük devretmesini otomatikleştirebilirsiniz. Yük devretmeyi başlatmak için otomasyon mantığı örneği için yük devretme akışı belgelerindeki diyagrama bakın.

Performans verimliliği

Performans verimliliği, kullanıcılar tarafından anlamlı bir şekilde yerleştirilen talepleri karşılamak amacıyla iş yükünüzü ölçeklendirme becerisidir. Daha fazla bilgi için bkz . Performans verimliliği sütununa genel bakış.

Daha yüksek ölçeklenebilirlik elde etmek için Service Bus Premium katmanı, mesajlaşma birimi sayısının ölçeğini genişletebilir. Premium katmanı avantajlarını gözden geçirmek için Service Bus Premium ve Standart mesajlaşma katmanları belgelerine bakın. Ayrıca, mesajlaşma birimlerinin otomatik ölçeklendirmesini yapılandırma hakkında bilgi edinmek için otomatik ölçeklendirme özelliği belgelerine bakın.

Service Bus için daha fazla öneri, Service Bus Mesajlaşması kullanarak performans iyileştirmeleri için en iyi yöntemler'de bulunabilir.

Sonraki adımlar

Daha fazla bilgi için Service Bus belgelerine bakın: