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

Event Grid
Service Bus

Bu örnek mimari , Temel kurumsal tümleştirme mimarisini temel alır. 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ç sistemlerini tümleştirmeyi göstermek için bu mimariyi genişletir. Bu tasarımı ve temel tümleştirme mimarisinde kullanılan bileşenleri bildiğinizden emin olun. Burada yeniden üretilmeyecek olan bu mimarinin temel bileşenleri hakkında temel bilgiler sağlar.

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.

Kuyrukları ve olayları kullanarak kurumsal tümleştirme için başvuru mimarisi

Bu mimarinin Visio dosyasını indirin.

İş akışı

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

Mimarinin bu sürümü, sistemin daha güvenilir ve ölçeklenebilir olmasını sağlamaya yardımcı olan iki bileşen ekler:

İleti aracısı kullanarak zaman uyumsuz iletişim, arka uç hizmetlerine doğrudan, zaman uyumlu çağrılar yapmaya göre 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ı ayırmaya yardımcı olur.
  • Mevcut ileti tabanlı sistemlerle tümleşir.
  • Arka uç sistemi kullanılamadığı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ırmaları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, 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 iki teslim moduna sahiptir: çekme veya proksied push. Çekme modelinde, alıcı sürekli olarak yeni iletileri yoklar. Özellikle her biri birkaç ileti alan çok fazla 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. Event Grid tümleştirmesine genel bakış Azure Service Bus. Ş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ğrulama adımlarını 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 Well-Architected Framework'ün yapı taşlarını uygular. Daha fazla bilgi için bkz. Azure Well-Architected Framework Microsoft.

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ış.

  • Azure AD: Azure AD genel olarak dağıtılmış, yüksek oranda kullanılabilir bir SaaS platformudur. Garantili kullanılabilirlik ayrıntıları için SLA'ya bakın.
  • API Management: API Management, iş gereksinimlerine ve maliyet toleranslarına göre birçok yüksek oranda kullanılabilir yapılandırmada dağıtılabilir. Seçeneklerin tam olarak gözden geçirilmesi için Kullanılabilirlik ve güvenilirlik API Management emin olun bölümüne bakın. Garantili kullanılabilirlik ayrıntıları için SLA'ya da bakın.
  • Logic Apps: Coğrafi olarak yedekli depolama, Tüketim planı katmanında Logic Apps için kullanılabilir. İş sürekliliği ve olağanüstü durum kurtarma çözümü tasarlama hakkında bilgi için kılavuza bakın. Garantili kullanılabilirlik ayrıntıları için SLA'ya da bakın.
  • Event Grid: Konu başlıkları, sistem konuları, etki alanları ve olay abonelikleri ile olay verileri için Event Grid kaynak tanımları, bölgedeki üç kullanılabilirlik alanında (kullanılabilir olduğunda) otomatik olarak çoğaltılır. Kullanılabilirlik alanlarından birinde hata olduğunda, Event Grid kaynakları herhangi bir insan müdahalesi olmadan otomatik olarak başka bir kullanılabilirlik alanına yük devreder. Başka bir bölgeye yük devretme için olağanüstü durum kurtarma çözümü tasarlama yönergeleri için bölgeler arasında coğrafi olağanüstü durum kurtarma bölümüne bakın. Garantili kullanılabilirlik ayrıntıları için SLA'ya da bakın.
  • Service Bus: Service Bus Premium, Coğrafi olağanüstü durum kurtarma ve Kullanılabilirlik Alanları destekler. Service Bus Standard için çoğaltma kullanılabilir. Garantili kullanılabilirlik ayrıntıları için SLA'ya da bakın.

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ş Azure Active Directory (Azure AD) kimlik doğrulamasını kullanın. Service Bus kaynakları için Azure AD tümleştirmesi, bir 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'yi kullanabilirsiniz.

Azure AD kullanılamadığı durumlarda paylaşılan erişim imzası (SAS) kullanabilirsiniz. SAS kimlik doğrulamasını kullanarak belirli haklarla bir kullanıcıya Service Bus kaynaklarına 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, uygun şekilde sertifikalar veya OAuth kimlik doğrulaması ile uç noktanın güvenliğini sağlayabilirsiniz. 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, doğrulama kodu aracılığıyla olay teslimini güvence altına alır. 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.

  • Service Bus Premium bir sanal ağ (VNet) alt ağ hizmet uç noktasına bağlanabilir ve ad alanının güvenliğini yalnızca yetkili sanal ağlardan gelen trafiği kabul eder. Ayrıca, sanal ağ trafiğinizi Özel Bağlantı üzerinden özel trafiğe kilitlemek için özel uç noktaları kullanın.
  • Logic Apps Standart ve Premium Logic Apps , özel uç noktalar üzerinden gelen trafiği kabul etmek ve sanal ağ tümleştirmesi aracılığıyla giden trafik göndermek için yapılandırılabilir.
  • API Management, Azure sanal ağı kullanarak API Management örneğinize ve API'lerinize erişimin güvenliğini sağlamak için çeşitli seçenekler sağlar. Seçenekleri ayrıntılı bir şekilde gözden geçirmek için Azure API Management ile sanal ağ kullanma belgelerine bakın. Özel uç noktalar da desteklenir.

Maliyet İyileştirmesi

Maliyet iyileştirmesi, gereksiz giderleri azaltmanın ve operasyonel verimliliği artırmanın yollarını gözden geçmektir. 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. Dikkat edilmesi gereken diğer noktalar şunlardı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, ölçeği el ile azaltın veya otomatik ölçeklendirmeyi 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ütmeye göre 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 prokside gönderme hem de çekme modellerini destekler. Çekme modelinde, her yoklama isteği bir eylem olarak ölçülür. 30 saniyede (varsayılan) uzun yoklama ile bile maliyet yüksek olabilir. İletilerin gerçek zamanlı olarak teslim edilmesi gerekmiyorsa, 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. fiyatlandırma Azure Service Bus.

Event Grid

Event Grid sunucusuz bir model kullanır. Faturalama, işlem sayısına (olay yürütmeleri) göre hesaplanır. İşlemler, olayların Etki Alanlarına veya Konulara girişi, gelişmiş eşleşmeler, teslim girişimleri ve yönetim çağrılarını içerir. 100.000'e kadar işlem ü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.

İşlem Mükemmelliği

Temel Kurumsal Tümleştirme başvuru mimarisi, Well-Architected Framework'ün 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'yiAzure Otomasyonu ile birleştirerek Service Bus kaynaklarınızın yük devretmesini otomatikleştirebilirsiniz. Yük devretmeyi başlatmaya yönelik 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: