Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tato architektura je založená na základní architektuře podnikové integrace , ale zahrnuje, jak integrovat podnikové back-endové systémy. Tato architektura používá zprostředkovatele zpráv a události k oddělení služeb pro zajištění větší škálovatelnosti a spolehlivosti. Ujistěte se, že znáte návrh a komponenty v základní architektuře integrace. Tyto prvky poskytují základní informace o základních součástech této architektury.
Architektura
Back-endové systémy, na které odkazuje tento návrh, zahrnují systémy saaS (software jako služba), Azure služby, služby založené na zprávách a stávající webové služby ve vašem podniku.
Načte soubor Visio této architektury.
Podrobnosti scénáře
Předchozí architektura vychází ze základní architektury podnikové integrace. Používá Azure Logic Apps k orchestraci pracovních postupů přímo s back-endovými systémy a k vytváření katalogů rozhraní API používá Azure API Management.
Tato verze architektury přidává dvě komponenty, které pomáhají učinit systém spolehlivější a škálovatelnější.
Azure Service Bus je bezpečný a spolehlivý zprostředkovatel zpráv.
Azure Event Grid je služba směrování událostí. Používá model publikování a odběru událostí.
Tato architektura používá asynchronní komunikaci prostřednictvím zprostředkovatele zpráv místo přímé synchronní volání back-endových služeb. Asynchronní komunikace poskytuje následující výhody:
Používá vzor vyrovnávání zátěže založený na frontě ke zpracování nárazového nárůstu zátěže pomocí vyrovnávání.
Používá vzorPublisher-Subscriber , abyste mohli vysílat zprávy více příjemcům.
Sleduje průběh dlouhotrvajících pracovních postupů spolehlivě, i když zahrnují více kroků nebo více aplikací.
Pomáhá oddělit aplikace.
Integruje se se stávajícími systémy založenými na zprávách.
Poskytuje možnost zařadit zprávy do fronty, pokud back-endový systém není k dispozici.
Používejte Azure Event Grid, aby různé komponenty systému mohly reagovat na události, když k nim dojde, a nespoléhat se na dotazování nebo naplánované úkoly. Podobně jako fronta zpráv a témata pomáhá Event Grid oddělit aplikace a služby. Pokud aplikace nebo služba publikuje události, oznámí se všem odběratelům, kteří mají zájem. Můžete přidávat nové předplatitele bez aktualizace odesílatele.
Řada služeb Azure podporuje odesílání událostí do Event Gridu. Například Azure Logic Apps může reagovat na událost, když jsou do úložiště objektů blob přidány nové soubory. Tento vzor vytvoří reaktivní pracovní postupy, ve kterých nahrání souboru nebo vložení zprávy do fronty spustí řadu procesů. Procesy se můžou spouštět paralelně nebo v určité sekvenci.
Doporučení
Zvažte následující doporučení. Další doporučení najdete v tématu Základní architektura podnikové integrace.
Sběrnice
Service Bus nabízí dva modely doručování: model vyžádání a model zprostředkovaného odesílání.
Pull model: Příjemce se neustále dotazuje na nové zprávy. Pokud potřebujete spravovat více front a časy dotazování, může být dotazování neefektivní. Tento model ale může zjednodušit architekturu, protože odstraňuje nadbytečné komponenty a datové přeskoky.
Proxy push model: Příjemce se přihlásí k odběru specifického typu události v tématu Event Gridu. Když je k dispozici nová zpráva, Service Bus vyvolá a odešle událost prostřednictvím Event Gridu. Tato událost pak aktivuje příjemce, aby z Service Bus stáhl další dávku zpráv. Tento model umožňuje systémům přijímat zprávy téměř v reálném čase, ale bez použití prostředků k průběžnému dotazování na nové zprávy. Tato architektura používá další komponenty, které musíte nasadit, spravovat a zabezpečit.
Když vytváříte pracovní postup Standard Logic Apps, který využívá zprávy služby Service Bus, použijte integrované triggery konektoru Service Bus. Integrovaný konektor zjednodušuje většinu konfigurace pull modelu bez dalších nákladů. Tato funkce poskytuje správnou rovnováhu mezi náklady, správou povrchu a zabezpečením, protože konektor se nepřetržitě zpracovává cyklicky v modulu runtime Logic Apps. Další informace najdete v tématu integrované triggery konektoru Service Bus.
Pro přístup ke skupině zpráv použijte režim PeekLock . Když použijete Nástroj PeekLock, aplikace logiky může před dokončením nebo opuštěním zprávy provést kroky k ověření každé zprávy. Tento přístup zabraňuje náhodné ztrátě zpráv.
Event Grid
Když se aktivuje trigger Event Gridu, znamená to, že došlo aspoň k jedné události. Když například aplikace logiky získá trigger Event Gridu pro Service Bus zprávu, může být ke zpracování k dispozici několik zpráv.
Úvahy
Tyto aspekty implementují pilíře architektury Azure Well-Architected, což je sada hlavních principů, které můžete použít ke zlepšení kvality úlohy. Další informace najdete v tématu Well-Architected Framework.
Spolehlivost
Spolehlivost pomáhá zajistit, aby vaše aplikace splňovala závazky, které jste pro své zákazníky udělali. Další informace najdete v kontrolním seznamu pro kontrolu návrhu pro spolehlivost.
Microsoft Entra ID je globálně distribuovaná platforma SaaS s vysokou dostupností.
Podle obchodních požadavků a odolnosti proti nákladům můžete nasadit Azure API Management v několika konfiguracích s vysokou dostupností. Další informace najdete v tématu Zajištění dostupnosti a spolehlivosti služby API Management.
Úroveň Logic Apps Consumption podporuje geograficky redundantní úložiště. Další informace najdete v tématu Provozní kontinuita a zotavení po havárii pro Logic Apps.
Definice prostředků event Gridu pro témata, systémová témata, domény a odběry událostí a data událostí se automaticky replikují napříč zónami dostupnosti v oblasti. Pokud dojde k selhání v jedné ze zón dostupnosti, prostředky Event Grid se automaticky přepnou do jiné zóny dostupnosti bez nutnosti zásahu člověka. Další informace najdete v tématu Zotavení po havárii napříč oblastmi a provozní kontinuita.
Všechny úrovně Service Bus podporují zóny dostupnosti.
Service Bus Premium podporuje geografickou replikaci a Service Bus Standard podporuje aktivní a pasivní replikaci.
Informace o garantovaných podrobnostech o dostupnosti jednotlivých služeb najdete v tématu SLA pro online služby.
Zabezpečení
Zabezpečení poskytuje ochranu před úmyslnými útoky a zneužitím cenných dat a systémů. Další informace naleznete v dokumentu Kontrolní seznam návrhu zabezpečení.
Pokud chcete pomoct zabezpečit Service Bus, spárujte ověřování Microsoft Entra se spravovanými identitami. integrace Entra ID pro prostředky Service Bus poskytuje Azure řízení přístupu na základě role (Azure RBAC) pro jemně odstupňované řízení přístupu klienta k prostředkům. Pomocí Azure RBAC můžete udělit oprávnění k objektu zabezpečení, jako je uživatel, skupina nebo instanční objekt aplikace. Principál služby aplikace v tomto scénáři je spravovaná identita.
Pokud nemůžete použít Entra ID, pomocí ověřování sdíleného přístupového podpisu (SAS)udělte uživatelům přístup a konkrétní práva k Service Bus prostředkům.
Pokud potřebujete zviditelnit frontu Service Bus nebo téma jako koncový bod HTTP, například k publikování nových zpráv, použijte API Management k zabezpečení této fronty vytvořením koncového bodu. K zabezpečení koncového bodu pak můžete použít certifikáty nebo ověřování OAuth. Nejjednodušší způsob, jak pomoct zabezpečit koncový bod, je použít aplikaci logiky, která má jako zprostředkující trigger požadavku HTTP nebo odpovědi.
Služba Event Grid pomáhá zabezpečit doručování událostí prostřednictvím ověřovacího kódu. Pokud k využívání události používáte Logic Apps, ověřování je automatické. Další informace najdete v tématu Zabezpečení a ověřování služby Event Grid.
Zabezpečení sítě
Zvažte zabezpečení sítě v celém návrhu.
Můžete navázat Service Bus Premium na koncový bod služby podsítě virtuální sítě. Tato konfigurace pomáhá zabezpečit obor názvů, protože přijímá pouze provoz z autorizovaných virtuálních sítí. Můžete také použít Azure Private Link a povolit tak privátní provoz jenom do vaší virtuální sítě prostřednictvím koncových bodů private.
Pokud váš obor názvů služby Service Bus používá cenovou úroveň Standard a nevyužívá privátní koncové body, použijte Azure Network Security Perimeter pro
Microsoft.ServiceBus/namespaces, abyste omezili expozici veřejných koncových bodů pomocí explicitních pravidel příchozího přístupu. Pro Logic Apps a další služby založené na zprávách, které publikují do Service Bus nebo z ní odebírají zprávy, upřednostňujte pravidla příchozí komunikace založená na odběru s rozsahem omezeným na předplatná Azure, která tyto služby hostují.Logic Apps Standard můžete nakonfigurovat tak, aby přijímal příchozí provoz prostřednictvím privátních koncových bodů a odesílal odchozí provoz prostřednictvím integrace virtuální sítě.
K zabezpečení přístupu k instanci a rozhraním API služby API Management můžete použít Azure virtuální síť. Tato metoda podporuje soukromé koncové body. Další informace najdete v tématu Použití virtuální sítě se službou API Management.
Optimalizace nákladů
Optimalizace nákladů se zaměřuje na způsoby, jak snížit zbytečné výdaje a zlepšit efektivitu provozu. Další informace najdete v kontrolním seznamu pro kontrolu návrhu pro optimalizaci nákladů.
K odhadu nákladů použijte cenovou kalkulačku Azure. Tady je několik dalších aspektů.
API Management
Při spuštění se vám budou účtovat všechny instance služby API Management. Pokud vertikálně navýšíte kapacitu a pak už tuto úroveň výkonu nepotřebujete, ručně vertikálně navyšte kapacitu nebo nakonfigurujte automatické škálování.
U úloh s lehkým využitím zvažte úroveň Consumption, což je nízkonákladová bezserverová možnost. Úroveň Consumption se účtuje podle volání API. Další úrovně se účtují za hodinu.
Logic Apps Standard
Logic Apps Standard používá elastický výpočetní model. Fakturace se počítá na základě počtu procesorů a využité paměti za hodinu. Další informace najdete na stránce s cenami služby Logic Apps.
Service Bus fronty, témata a odběry
Service Bus fronty a předplatná podporují pro doručování zpráv jak modely proxied push, tak pull. V modelu vyžádání změn se každý požadavek na dotazování měří jako akce. I když nastavíte dlouhé dotazování na výchozí hodnotu 30 sekund, můžou být náklady vysoké. Pokud nepotřebujete doručení zpráv v reálném čase, zvažte použití modelu proxied push.
Service Bus fronty jsou zahrnuty ve všech úrovních: Basic, Standard a Premium. Service Bus témata a předplatná jsou k dispozici na úrovních Standard a Premium. Další informace najdete na stránkách ceny služby Service Bus.
Event Grid
Event Grid používá bezserverový model. Fakturace se vypočítá na základě počtu operací. Operace zahrnují události, které přejdou na domény nebo témata, pokročilé shody, pokusy o doručení a volání správy. Využití až 100 000 operací je bezplatné.
Další informace najdete v tématu Ceny služby Event Grid.
Efektivita provozu
Efektivita provozu se zabývá provozními procesy, které nasazují aplikaci a udržují ji spuštěnou v produkčním prostředí. Další informace najdete v kontrolním seznamu pro kontrolu návrhu pro efektivitu provozu.
Základní referenční architektura podnikové integrace poskytuje pokyny k vzorům DevOps, které odpovídají pilíři efektivity provozu architektury Well-Architected.
Automatizujte co nejvíce operací obnovení, abyste zlepšili efektivitu provozu. S ohledem na automatizaci můžete kombinovat monitorování protokolů Azure s Azure Automation a automatizovat převzetí služeb při selhání prostředků Service Bus. Příklad logiky automatizace pro zahájení failoveru najdete v sekci Tok failoveru.
Efektivita výkonu
Efektivita výkonu odkazuje na schopnost vaší úlohy efektivně škálovat tak, aby splňovala požadavky uživatelů. Další informace najdete v kontrolním seznamu pro kontrolu návrhu týkajícího se efektivity výkonu.
Pokud chcete dosáhnout vyšší škálovatelnosti, může úroveň Service Bus Premium škálovat počet jednotek zasílání zpráv. Další informace najdete v tématu úrovně zasílání zpráv Service Bus Premium a Standard a funkce automatického škálování.
Další doporučení pro Service Bus najdete v tématu Nejlepší postupy pro zvýšení výkonu při využívání zasílání zpráv pomocí Service Bus.
Další kroky
- Přehled integrace služby Service Bus s Event Grid
- Kurz, který používá zasílání zpráv k integraci systémů jiných společností než Microsoft přes NServiceBus