Osvědčené postupy architektury pro Azure Service Bus

Azure Service Bus je plně spravovaný podnikový zprostředkovatel zpráv, který umožňuje spolehlivé zasílání zpráv mezi distribuovanými aplikacemi a službami. Service Bus poskytuje fronty zpráv a témata pro publikování a odběr s funkcionalitami, jako jsou relace, detekce duplicit, fronty nedoručených zpráv a pokročilé možnosti směrování pro vytváření odolných řešení pro zasílání zpráv.

Úspěšná implementace služby Service Bus závisí na týmech s hlubokými znalostmi základních vzorů zasílání zpráv, včetně front, témat, odběrů a funkcí specifických pro Service Bus, jako jsou relace a fronty nedoručených zpráv. Týmy také potřebují dobrý přehled o ekosystému zasílání zpráv Azure, včetně vzorů integrace služby Event Hubs a Event Grid, a zvolit správnou službu pro každý scénář zasílání zpráv.

Tento článek předpokládá, že jako architekt jste si prostudovali rozhodovací strom zasílání zpráv a jako řešení zasílání zpráv pro vaši úlohu zvolili Azure Service Bus.

Pokyny v tomto článku poskytují architektonická doporučení, která odpovídají principům pilířů Well-Architected Framework.

Rozsah technologií

Tato kontrola se zaměřuje na vzájemně nesouvisející rozhodnutí pro následující prostředky Azure:

  • Azure Service Bus

Reliability

Účelem pilíře spolehlivosti je zajistit nepřetržitou funkčnost budováním dostatečné odolnosti a schopnosti rychle se zotavit ze selhání.

principy návrhu spolehlivosti poskytují základní strategii návrhu použitou pro jednotlivé komponenty, systémové toky a systém jako celek.

Kontrolní seznam návrhu úloh

Zahajte strategii návrhu na základě kontrolního seznamu pro kontrolu návrhů z hlediska spolehlivosti. Určete její význam pro vaše obchodní požadavky a přitom mějte na paměti povahu vaší aplikace a důležitost jejích součástí. Rozšiřte strategii tak, aby podle potřeby zahrnovala více přístupů.

  • Zvažte omezení, která mohou představovat omezení návrhu: Kvóty služby Azure Service Bus a limity specifické pro jednotlivé úrovně ovlivňují návrh. Zvolte úroveň, která vám dává prostor pro zpracování zpráv, a vyhněte se nákladnému návrhu. Pokud například vaše vyhodnocení špičky a zvýšení propustnosti naznačují vyšší limity, může být Premium vhodné. Podobně u větších zátěží zvažte tarif Premium.

    Detekce a zpracování QuotaExceeded výjimek v logice aplikace Pokud k tomu dojde, odstraňte zprávy z fronty nebo zkontrolujte, jestli nastavení doby platnosti zprávy způsobuje hromadění dat. Pomocí vzoru Circuit Breaker se vyhnete opakovaným pokusům při překročení kvóty.

  • Předvídejte potenciální selhání prostřednictvím analýzy režimu selhání: Analýza režimu selhání poskytuje systematický přístup k předvídání potenciálních scénářů selhání a vývoji strategií pro zmírnění rizik pro zajištění odolnosti služby zasílání zpráv.

    Failure Zmírnění
    Obor názvů služby Service Bus není dostupný Pomocí služby Azure Monitor můžete nastavit upozornění na dostupnost služby Service Bus. Zachyťte výjimky z klientské knihovny SDK a zkontrolujte vlastnost IsTransient, abyste zjistili, zda je pokus vhodný. Nakonfigurujte geografickou obnovu po havárii tak, aby během výpadků automaticky došlo k přepnutí do sekundárního regionu.
    Selhání zpracování zpráv – vytváření jedovatých zpráv Nakonfigurujte fronty nedoručených zpráv tak, aby izolovaly nedoručitelné zprávy. Implementujte zásady opakovaného pokusu klienta se vzory exponenciálního opakování a jističů obvodů.
    Velké objemy zpráv překračují limity propustnosti Pomocí služby Azure Monitor můžete sledovat metriky propustnosti a nastavit upozornění. Povolte automatické škálování jednotek zasílání zpráv na úrovni Premium, abyste mohli zpracovávat špičky provozu.
  • Implementace redundance napříč vrstvami řešení: Redundance je kritická technika pro zajištění spolehlivého zasílání zpráv odstraněním kritických bodů selhání napříč několika vrstvami.

    • Instance-Level redundance: Na základní úrovni distribuujte zasílání zpráv mezi samostatné instance služby Service Bus, abyste dosáhli redundance na úrovni instance. To >vyžaduje, aby aplikace implementovala vlastní logiku pro převzetí služeb při selhání nebo strategie vyrovnávání zatížení napříč několika koncovými body zasílání zpráv.

    • Zónová redundance: Povolte dostupnost zón k ochraně před selháními na úrovni datového centra. V případě takového selhání může dojít k dočasnému přerušení aplikace; Service Bus ale automaticky replikuje data a metadata zpráv napříč několika zónami dostupnosti, aby se zachovala kontinuita.

    • Region-Level redundance: U úloh, které vyžadují ještě větší odolnost, zvažte implementaci redundance na úrovni oblasti. Toho lze dosáhnout pomocí vzorců aktivní nebo pasivní replikace:

      • Aktivní replikace: Klient odešle každou zprávu do obou oblastí. Přijímač naslouchá oběma. Zprávy vyžadují jedinečný identifikátor, aby klient mohl zahodit duplicity.
      • Pasivní replikace: Klient odesílá do jedné oblasti a při chybě přejde na druhou. Přijímač naslouchá oběma. Tím se zmenší duplicitní zprávy, ale příjemce je stále musí zpracovat.

    Ujistěte se, že jste vybrali úroveň služby Service Bus, která podporuje tyto funkce redundance, například úroveň Premium.

  • Implementace strategií zotavení po havárii a zálohování: Zotavení po havárii ve více oblastech chrání před úplnými oblastmi selhání prostřednictvím geografické replikace služby Service Bus a možností geografického zotavení po havárii. U oborů názvů úrovně Premium se doporučuje geografická replikace, protože poskytuje ochranu tím, že replikuje metadata i data zpráv napříč oblastmi s funkcemi automatického převzetí služeb při selhání.

    Geografická replikace nabízí synchronní a asynchronní režimy replikace: synchronní poskytuje nulovou ztrátu dat s vyšší latencí, zatímco asynchronní minimalizuje dopad na výkon s potenciální ztrátou dat pouze během scénářů vynuceného povýšení. Zotavení po geografické havárii je stále k dispozici jako alternativa, která replikuje pouze metadata oboru názvů bez dat zpráv. Tato alternativa je vhodná pro scénáře, kdy aplikace řídí vlastní replikaci dat.

    Během regionálních výpadků mohou aplikace pokračovat v provozu v povýšené sekundární oblasti. Plánování obnovení geografické replikace by mělo zahrnovat monitorování prodlevy replikace, postupy povýšení rolí (plánované a vynucené) a časování šíření DNS během scénářů převzetí služeb při selhání.

    Strategie zálohování na úrovni zpráv vyžadují implementaci na úrovni aplikace, protože Service Bus neposkytuje integrované možnosti zálohování zpráv. Zálohování konfigurace zahrnuje export metadat oboru názvů, definic front a témat a zásad přístupu, které umožňují rychlé obnovení oboru názvů během scénářů zotavení po havárii.

    Zotavení po havárii vyžaduje zvážení záruk řazení zpráv, řešení duplicit při scénářích převzetí služeb při selhání a logiky opětovného pokusu na úrovni aplikace pro řešení změn latence napříč regiony.

  • Implementace spolehlivého škálování pro načítání proměnných zpráv: Používejte spolehlivé vzory zpracování zpráv, které závisí na strategiích dělení a souběžných konfiguracích příjemců, aby se zachovala konzistentní propustnost bez selhání. Nakonfigurujte několik souběžných příjemců na jednu frontu, aby se zvýšila spolehlivost zpracování tím, že distribuuje zatížení a snižuje jednotlivé body selhání. Fronty s podporou relací zajišťují seřazené zpracování, ale omezují paralelismus na jednoho aktivního příjemce na relaci a vytvářejí potenciální kritické body spolehlivosti.

    Rozdělené entity můžete použít k distribuci zpráv mezi více zprostředkovatele zpráv pro zvýšení odolnosti proti chybám, i když mohou ovlivnit garance zachování pořadí a transakční soudržnosti. Nakonfigurujte odběry témat s filtrováním zpráv, abyste umožnili spolehlivé scénáře typu fan-out, které distribuují zpracování napříč více spotřebitelskými aplikacemi, aniž by vznikaly závislosti na infrastruktuře.

    Úroveň Service Bus Premium poskytuje vyhrazené jednotky zasílání zpráv s předvídatelnou kapacitou a jednotkami automatického škálování propustnosti pro zpracování dynamických svazků zpráv. Každá jednotka zasílání zpráv poskytuje garantovaná omezení odesílání a příjmu s automatickým škálováním, která brání omezování během špičky provozu. Úroveň Standard používá sdílenou infrastrukturu s proměnlivou kapacitou, ale nemá vyhrazené záruky propustnosti a možnosti automatického škálování.

  • Implementace monitorování a detekce stavu zaměřeného na spolehlivost: Pro zajištění spolehlivého zasílání zpráv je nezbytné monitorovat vlastnosti výkonu, které můžou signalizovat potenciální problémy. Zaměřte se na klíčové ukazatele, jako jsou:

    • Trendy počtu aktivních zpráv pro detekci nárůstu nebo zpoždění zpracování.
    • Chyby serveru, které můžou odkazovat na základní problémy s infrastrukturou.
    • Události omezování indikující omezení kapacity nebo vyčerpání prostředků

    Mimo funkční metriky patří indikátory zaměřené na spolehlivost, například:

    • Míra úspěšnosti doručování zpráv za účelem zajištění konzistentní propustnosti
    • Akumulace fronty nedoručených zpráv, která může odhalit trvalá selhání doručení.
    • Detekce událostí přepnutí při výpadku ke sledování odolnosti během narušení infrastruktury

    Rozšiřte monitorování na stav závislostí, které pokrývají připojené aplikace a externí služby, které publikují nebo využívají zprávy. Vzhledem k tomu, že spolehlivost zasílání zpráv závisí na celém řetězci toků, měly by být prahové hodnoty nakonfigurované tak, aby aktivovaly výstrahy pro podmínky, které ohrožují záruky doručení, jako je rychlý růst fronty nedoručených zpráv nebo události regionálního převzetí služeb při selhání.

  • Konfigurace mechanismů samozásobování a vzorů odolnosti: Service Bus obsahuje integrované mechanismy samoobslužné ochrany navržené tak, aby se zabránilo kaskádovým selháním v infrastruktuře zasílání zpráv. Tyto ochrany je možné konfigurovat na třech úrovních: na úrovni zpráv, na úrovni klienta a na úrovni oboru názvů.

    • Message-Level Protection: Nakonfigurujte fronty nedoručených zpráv tak, aby automaticky izolovaly nedoručitelné zprávy, což jim brání v blokování toku zpráv, které jsou v pořádku. Nastavte parametry, jako je maximální počet doručení a hodnota TTL (time-to-live) na základě vašich požadavků na úlohy.

      Pokud příjemce selže, použijte režim PeekLock (a ne režim Přijmout a Smazat), abyste zajistili, že zprávy nebudou ztraceny. Pokud zámek vyprší, zpráva se zpřístupní ostatním příjemcům. Pokud zpráva překročí maximální počet doručení, přesune se do fronty nedoručených zpráv.

    • Client-Level Protection: Používejte klientské SDK s integrovanými zásadami opakování, které zahrnují exponenciální prodlevy a mechanismus přerušení obvodu pro zmírnění kaskádových selhání. Implementujte sdružování připojení a ukládání klientů do mezipaměti, abyste snížili vyčerpání prostředků, zejména při operacích s vysokou propustností.

    • Izolace na úrovni oboru názvů: Zabraňte selhání mezi aplikacemi tím, že budete používat samostatné obory názvů Service Bus pro různé prostředí nebo komponenty úloh. Zvažte nastavení dávkování zpráv a předběžného načítání, abyste snížili latenci sítě.

Doporučení pro konfiguraci

Recommendation Prospěch
Nasaďte úroveň Premium s redundancí zón v oblastech, které podporují zóny dostupnosti. Úroveň Premium poskytuje vyhrazenou infrastrukturu potřebnou pro možnosti redundance zón.

Tuto funkci povolte pro všechny úlohy zasílání zpráv v produkčním prostředí, abyste zajistili vysokou dostupnost a automatickou odolnost proti chybám na úrovni zóny.
Eliminuje jednotlivé body selhání v rámci regionální infrastruktury a zajišťuje automatické přepnutí při selhání bez ručního zásahu.

Výrazně zkracuje dobu obnovení z minut na sekundy během selhání zóny a zajišťuje nepřetržitou dostupnost zpracování zpráv pro kritické úlohy.
Nakonfigurujte geografickou replikaci pro obory názvů úrovně Premium, abyste umožnili zotavení po havárii s metadaty i replikací dat zpráv napříč oblastmi. Zvolte synchronní replikaci pro nulovou ztrátu dat nebo asynchronní replikaci pro optimalizovaný výkon s minimálním rizikem ztráty dat.

Alternativně můžete nakonfigurovat párování geografického zotavení po havárii pro scénáře vyžadující pouze replikaci metadat, kde aplikace spravují vlastní strategie obnovy dat.
Geografická replikace pomáhá s ochranou před regionálními selháními prostřednictvím replikace dat a metadat, která podporují scénáře plánovaného a vynuceného povýšení s konfigurovatelnými modely konzistence.

Geografické obnovování po havárii nabízí ochranu založenou pouze na metadatech, která je vhodná pro aplikace s vlastní replikací dat nebo přijatelnou ztrátou zpráv během havárií.
Povolte automatické škálování v názvových prostorech úrovně Premium, aby automaticky zpracovával variabilní zátěže zpráv. Nakonfigurujte škálování na základě metrik procesoru, paměti a připojení s odpovídajícími prahovými hodnotami, abyste zabránili snížení výkonu. Podporuje vzory proměnných úloh bez snížení výkonu služby a současně eliminuje omezování zpráv během špičky provozu. Snižuje režii na ruční správu kapacity pro provozní týmy.
Pokud chcete zvýšit propustnost zpracování zpráv a odolnost proti chybám, povolte více souběžných příjemců . Nakonfigurujte vzory přijímačů, které vyrovnává paralelismus s požadavky na spolehlivost.

Pomocí dělených entit distribuujte zatížení mezi několik zprostředkovatelů zpráv a uvědomte si, že řazení zpráv je zaručené pouze v rámci jednotlivých oddílů.
Distribuuje zatížení napříč několika zprostředkovateli zpráv pro lepší škálovatelnost a současně zvyšuje celkovou propustnost zpráv prostřednictvím možností paralelního zpracování.
Nastavte upozornění na Azure Monitor pro kritické metriky spolehlivosti služby Service Bus, včetně prahových hodnot počtu nedoručených zpráv, míry chyb serveru nad základní úroveň a událostí zpomalování indikujících omezení kapacity. Zkracuje střední dobu detekce problémů se spolehlivostí a poskytuje automatizované upozorňování na kritické události spolehlivosti.

Umožňuje proaktivní detekci problémů s doručováním zpráv při identifikaci omezení kapacity před dopadem na dostupnost.
Povolte fronty nedoručených zpráv pro všechny produkční fronty a témata s vhodnými monitorovacími postupy ke sledování akumulace chybných zpráv a implementaci strategií odstranění. Zabraňuje tomu, aby otrávené zprávy blokovaly zpracování nezávadných zpráv, a podporuje provozní řešení potíží prostřednictvím kontroly fronty nedoručených zpráv.
Povolte detekci duplicit, abyste zabránili odesílání duplicitních zpráv do fronty v rámci určitého časového okna historie.

Tato funkce nezabrání příjemci ve zpracování stejné zprávy více než jednou, takže je stále vyžadována logika idempotentní aplikace.
Vyfiltruje redundantní zprávy vytvořené opakovanými pokusy producenta nebo dočasnými problémy v síti. Tato funkce nezabrání příjemci ve zpracování stejné zprávy více než jednou, takže je stále vyžadována logika idempotentní aplikace, ale vystavení duplicitním zprávám je omezené.
Pomocí samostatných oborů názvů můžete zajistit izolaci mezi prostředími a zabránit šíření selhání mezi prostředími. Odpovídajícím způsobem nakonfigurujte zabezpečení na úrovni oboru názvů a řízení přístupu.

Implementujte zásady opakování klienta služby Service Bus s exponenciálním ústupem a přerušovačem obvodu pro elegantní zpracování přechodných selhání.
Snižuje složitost aplikace transparentním zpracováním opakovaných pokusů a zároveň poskytuje automatickou ochranu před přechodnými problémy se službou.

Izolace oboru názvů zabraňuje přenosu selhání mezi prostředími a umožňuje nezávislé škálování a správu různých složek pracovního zatížení.
Založte automatizované zálohování konfigurace služby Service Bus pomocí šablon Azure Resource Manageru, které zahrnují metadata a definice názvů. Definice front, předplatná témat a zásady přístupu vyžadují zálohování prostřednictvím správy verzí. Automatizované postupy zálohování snižují ruční úsilí a lidské chyby, zatímco správa verzí pro změny infrastruktury zasílání zpráv zlepšuje správu.

Zkracuje cíle doby obnovení prostřednictvím automatizace a minimalizuje lidské chyby během postupů obnovení.

Zabezpečení

Účelem pilíře zabezpečení je poskytnout záruky důvěrnosti, integrity a dostupnosti úloh.

Principy návrhu zabezpečení poskytují strategii návrhu vysoké úrovně pro dosažení těchto cílů použitím přístupů k technickému návrhu služby Azure Service Bus.

Kontrolní seznam návrhu úloh

Zahajte strategii návrhu na základě kontrolního seznamu pro kontrolu návrhu pro zabezpečení a identifikujte ohrožení zabezpečení a kontrolní mechanismy, které zlepšují stav zabezpečení.

  • Vytvoření standardních hodnot zabezpečení: Projděte si standardní hodnoty zabezpečení služby Azure Service Bus a začleňte příslušné míry do základu zabezpečení. Srovnávací test zabezpečení cloudu Microsoftu poskytuje specifické kontrolní mechanismy zabezpečení pro Service Bus, které řeší správu identit, zabezpečení sítě, ochranu dat a požadavky na dodržování předpisů.

    Tento standardizovaný přístup k konfiguraci zabezpečení a implementaci zásad umožňuje dodržování oborových standardů a zákonných požadavků v infrastruktuře zasílání zpráv.

  • Vynucení autorizace a ověřování pomocí Microsoft Entra ID: Service Bus nabízí integrované role Azure RBAC pro podrobné řízení přístupu k operacím zasílání zpráv, včetně rolí Vlastník dat služby Azure Service Bus, Odesílatel dat a Příjemce dat pro různé úrovně oprávnění. Tyto role roviny dat umožňují jemně odstupňovanou kontrolu nad odesíláním, přijímáním a správou operací pomocí přiřazení, která dodržují principy nejnižších oprávnění.

    Použití spravovaných identit pro povolení zabezpečeného ověřování spravovaného Microsoft Entra ID.

    Provádějte pravidelné revize přiřazení rolí a automatizované zřizování prostřednictvím členství ve skupinách, abyste dlouhodobě zachovali zabezpečení.

  • Implementace zabezpečených konfigurací sítě: Kontrolní mechanismy zabezpečení sítě by se měly implementovat ve vrstvách pro hloubkovou ochranu. Pomocí privátních koncových bodů můžete povolit zabezpečené připojení vytvořením privátních IP adres pro obory názvů služby Service Bus a zajistit, aby provoz zpráv zůstal v páteřní síti Azure. Případně je možné považovat koncové body služeb za to, že poskytují integraci sítě bez privátních IP adres. U většiny podrobných kontrol by měla být pravidla brány firewall protokolu IP a pravidla virtuální sítě nastavená tak, aby omezovala přístup k určitým rozsahům IP adres a podsítím klienta.

    Zakázat přístup k veřejné síti při navázání privátního připojení, aby se vyloučily vektory útoku založené na internetu, zatímco pravidla skupin zabezpečení sítě poskytují další filtrování podsítí obsahujících uživatele a producenty služby Service Bus.

  • Šifrování neaktivních uložených dat a přenosu: Šifrování pomocí protokolu AMQP (Advanced Message Queuing Protocol) přes protokol TLS pro zabezpečené zasílání zpráv s využitím možností ověřování. Protokol Transport Layer Security (TLS) verze 1.2 nebo vyšší chrání data zpráv během přenosu mezi klienty a službou Service Bus.

    Service Bus automaticky šifruje neaktivní uložená data pomocí klíčů spravovaných platformou, kde Azure zpracovává vytváření, obměnu a správu klíčů. Pro lepší kontrolu podporuje úroveň Premium integraci se službou Azure Key Vault pro šifrování klíčů spravovaných zákazníkem se zavedenými zásadami obměny klíčů.

  • Posílení konfigurace oboru názvů a omezení prostoru pro útoky: Odeberte nepotřebné fronty, témata a odběry, které už nejsou potřeba, aby se zabránilo neoprávněnému přístupu k nepoužívaným entitám zasílání zpráv. Nakonfigurujte vhodné zásady uchovávání zpráv a nastavení automatického odstranění, abyste zabránili neomezenému ukládání citlivých dat zpráv.

    Povolte pouze požadované vzory zasílání zpráv pro architekturu úloh a zakažte funkce, jako je přeposílání zpráv, pokud to výslovně nepotřebujete. Kromě toho proveďte pravidelné kontroly konfigurace oboru názvů, abyste zachovali stav zabezpečení v průběhu času.

  • Zabezpečení připojovacích řetězců a přihlašovacích údajů pro přístup: Upřednostněte připojení založená na identitách v aplikacích, abyste vyloučili úložiště připojovacích řetězců, protože obsahují citlivé ověřování. Některé scénáře mohou vyžadovat připojovací řetězce, pro ty, které mají zavedené mechanismy zabezpečeného zpracování.

    Integrace služby Azure Key Vault umožňuje centralizované úložiště a řízení přístupu, což snižuje riziko vystavení přihlašovacích údajů v konfiguraci aplikace a současně poskytuje zásady protokolování auditu a přístupu. Sdílené přístupové klíče pravidelně obměňujte pomocí postupů pro vrácení klíčů, které minimalizují přerušení služeb.

  • Implementace monitorování zabezpečení a detekce hrozeb: Zaměřte se na monitorování zabezpečení na detekci hrozeb, pokusy o neoprávněný přístup a vzory podezřelého zasílání zpráv, včetně neúspěšných pokusů o ověření, eskalace oprávnění a neobvyklého chování při zasílání zpráv. Diagnostické protokoly by měly zaznamenávat události ověřování a selhání autorizace, zatímco operace správy poskytují záznamy auditu zabezpečení.

    Integrace služby Azure Monitor zahrnuje selhání ověřování, události omezení a neobvyklé vzorce objemu zpráv. Implementujte automatizované postupy upozorňování a reakce na události zabezpečení s integrací do řešení Azure Sentinel nebo SIEM pro korelaci napříč infrastrukturou zabezpečení.

  • Vytvoření postupů testování a ověřování zabezpečení: Identifikujte potenciální mezery zabezpečení v infrastruktuře zasílání zpráv prostřednictvím testování zabezpečení, které ověřuje konfiguraci služby Service Bus proti standardním hodnotám zabezpečení a ověřuje dodržování zásad zabezpečení organizace.

    V ideálním případě by mělo být testování zabezpečení integrováno do pracovních postupů nasazení a provozu pomocí automatizovaných nástrojů pro kontrolu zabezpečení, které vyhodnocují konfiguraci sítě a řízení přístupu.

    Testovací scénáře by měly řešit různé vektory útoku, včetně ověření, že zásady DLQ zabraňují ztrátě zpráv bez vystavení citlivých dat, potvrzení, že otrávené zprávy nezpůsobují nekonečné opakování, a ověření zpracování idempotence. Kromě toho simulujte útoky DoS na testování omezování, vkládání poškozených zpráv pro testování ověření a simulaci neoprávněných pokusů o přístup.

Doporučení pro konfiguraci

Recommendation Prospěch
Přiřaďte příslušné role Azure RBAC na základě principu nejnižšího oprávnění. Pro konkrétní operace zasílání zpráv použijte role Odesílatele dat, Příjemce dat nebo Vlastník dat . Poskytuje centralizované řízení přístupu prostřednictvím Azure RBAC pro operace zasílání zpráv a snižuje prostor pro útoky tím, že eliminuje vystavení přihlašovacích údajů v aplikacích. Tento přístup umožňuje zásady podmíněného přístupu a monitorování zabezpečení pro komplexní ochranu.
Nakonfigurujte soukromé koncové body pro názvové prostory Service Bus Premium a zakažte přístup k veřejné síti, abyste zajistili připojení soukromé sítě. Upozorňujeme, že to vyžaduje namespace služby Service Bus úrovně Premium pro podporu privátních koncových bodů. Snižuje prostor pro útoky na infrastrukturu zasílání zpráv výrazně, protože privátní koncové body eliminují vystavení hrozbám z veřejného internetu. To poskytuje nejvyšší úroveň zabezpečení sítě pro komunikaci služby Service Bus s integrací do stávajících zásad zabezpečení a kontrolních mechanismů virtuální sítě.
Implementujte pravidla IP firewallu pro omezení přístupu k oboru názvů na známé rozsahy IP adres klientů a nakonfigurujte pravidla virtuální sítě pro omezení přístupu pouze ze schválených podsítí. Tento přístup je možné kombinovat s privátními koncovými body pro vrstvené zabezpečení sítě. Omezuje přístup služby Service Bus k autorizovaným síťovým umístěním a snižuje riziko neoprávněného přístupu. Umožňuje protokolování auditu pokusů o přístup k síti pro monitorování zabezpečení při integraci se stávajícími zásadami zabezpečení sítě a architekturami zásad správného řízení.
Povolte šifrování klíčů spravovaných zákazníkem pro obory názvů Service Bus Premium pomocí služby Azure Key Vault pro správu šifrovacích klíčů a řízení přístupu. Implementujte zásady obměně klíčů s příslušnými řízeními přístupu. Klíče spravované zákazníkem poskytují vylepšenou kontrolu nad životním cyklem šifrovacího klíče a umožňují dodržování zákonných standardů prostřednictvím správy klíčů řízených zákazníkem. Automatická obměny klíčů udržuje dostupnost služby při aktualizaci šifrovacích klíčů.
Vynucujte minimální verzi protokolu TLS 1.2 pro všechna připojení klientů služby Service Bus a zakažte starší mechanismy ověřování, jako jsou starší formáty sdíleného přístupového podpisu.

Moderní ověřovací protokoly snižují ohrožení zabezpečení vůči útokům založeným na protokolech, zatímco posílení zabezpečení protokolu snižuje riziko útoku a ohrožení zabezpečení.
Silné šifrování přenosu a moderní ověřovací protokoly chrání data zpráv, zatímco komunikace zasílání zpráv splňuje požadavky na dodržování předpisů pro zabezpečení přenosu dat. Posílení zabezpečení protokolu eliminuje známá ohrožení zabezpečení ve starších protokolech.
Ukládejte připojovací řetězce služby Service Bus a sdílené přístupové klíče ve službě Azure Key Vault s příslušnými zásadami přístupu pro řízení přístupu k přihlašovacím údajům. Implementujte postupy obměny klíčů pomocí kanálů automatizovaného nasazení. Centralizovaná správa tajných kódů eliminuje vystavení přihlašovacích údajů v aplikacích a zabraňuje úložišti přihlašovacích údajů v konfiguraci aplikace a úložištích zdrojového kódu. Kromě toho poskytuje protokolování auditu a řízení přístupu pro citlivé ověřovací informace.
Nakonfigurujte nastavení diagnostiky služby Azure Monitor tak, aby zaznamenávala události zabezpečení služby Service Bus, včetně událostí ověřování, selhání autorizace a operací správy. Integrace protokolů zabezpečení se službou Azure Sentinel pro možnosti detekce hrozeb Monitorování zaměřené na zabezpečení umožňuje rychlou detekci pokusů o neoprávněný přístup, zatímco detekce podezřelých vzorů zasílání zpráv pomáhá identifikovat potenciální bezpečnostní incidenty. Integrace s řešeními SIEM umožňuje korelaci s širším monitorováním zabezpečení.

Optimalizace nákladů

Optimalizace nákladů se zaměřuje na odhalování vzorců výdajů, upřednostnění investic do klíčových oblastí a optimalizaci jiných oblastí pro splnění rozpočtu organizace a zároveň obchodních požadavků.

Principy návrhu optimalizace nákladů poskytují strategii návrhu vysoké úrovně pro dosažení těchto cílů a dosažení kompromisů v technickém návrhu souvisejícím se službou Azure Service Bus a jeho prostředím.

Kontrolní seznam návrhu úloh

Zahajte svou strategii návrhu na základě kontrolního seznamu přezkumu návrhu pro optimalizaci nákladů pro investice. Dolaďte návrh tak, aby úloha byla v souladu s rozpočtem přiděleným pro danou úlohu. Váš návrh by měl využívat správné možnosti Azure, monitorovat investice a hledat příležitosti k optimalizaci v průběhu času.

  • Zvolte správnou úroveň služby Service Bus: Service Bus poskytuje více cenových úrovní s různými nákladovými strukturami a možnostmi. Zohledněte technické požadavky, které vyžadují relace, detekci duplicit, geografickou replikaci a geografické zotavení po havárii, při výběru úrovní služby Service Bus. Úroveň Premium podporuje geografickou replikaci i geografické zotavení po havárii pro scénáře s více oblastmi, zatímco úroveň Standard nemá nativní funkce geografické redundance. Pokud váš návrh nepotřebuje pokročilé funkce, nemusíte platit za vyšší úrovně.

    Při rozhodování o vrstvách zvažte také plánování kapacity, které zohledňuje souběžná připojení, velikosti zpráv a špičkové objemy. Úroveň Premium poskytuje vyhrazené jednotky zasílání zpráv s předvídatelnými měsíčními náklady, které jsou vhodné pro produkční úlohy. Úroveň Standard nabízí úspory nákladů pro neprodukční prostředí.

  • Vytvoření metodologií prognózování využití služby Service Bus a modelování nákladů: Identifikace nákladových faktorů při prognózování výdajů služby Service Bus Vzory použití, jako je zpracování řízené událostmi, fronty úloh a scénáře publikování a odběru, mají odlišné charakteristiky nákladů. Při sestavování modelů realistických nákladů vezměte v úvahu počty operací a dobu trvání úložiště zpráv.

    Zohlášeme kolísání poptávky, včetně sezónních variací a prognóz obchodního růstu. Do prognózy zahrňte provozní režii z testování zotavení po havárii a dalších administrativních aktivit, abyste se vyhnuli překvapením rozpočtu.

  • Implementovat monitorování nákladů a rozpočtová upozornění pro prostředky služby Service Bus: Projděte si rozpisy nákladů podle namespace služby Service Bus a blíže se seznamte se vzory útrat. Monitorujte poplatky za využití, včetně operací zpráv, spotřeby úložiště a poplatků za výchozí přenos dat sítě. Tyto metriky odhalí příležitosti optimalizace a trendy nákladů.

    Nakonfigurujte upozornění rozpočtu s několika úrovněmi prahových hodnot pro včasné upozornění před významným přetečením. Upozornění na náklady můžou aktivovat úpravy škálování nebo pohotovostní rozpočtové kontroly. Spouštějte upozornění při dosažení 50 %, 75 %, a 90 % rozpočtu a čin'te proaktivní rozhodnutí o řízení nákladů. Vytvořte postupy zpracování výstrah, které zahrnují automatizované odpovědi a pracovní postupy oznámení. Integrujte schvalovací pracovní postupy pro nasazení s vysokými náklady, abyste zabránili neočekávaným výdajům.

    Implementujte strategie přidělování nákladů pro sdílené obory názvů obsluhující více aplikací. Označování prostředků umožňuje modely vracení peněz prostřednictvím podrobného monitorování a zajištění přesného přiřazení nákladů napříč týmy a projekty.

  • Správná velikost přidělených prostředků pro maximalizaci jejich využití Analyzujte využití prostředků a identifikujte příležitosti pro optimalizaci. Projděte si vzorce propustnosti zpráv, trendy hloubky front a využití připojení a vyhledejte nepoužívané nebo nedostatečně využité prostředky. Zakažte nepotřebné funkce a konsolidujte nevyužité obory názvů. Tady je několik typických oblastí, které je potřeba vzít v úvahu:

    • Optimalizujte náklady na úložiště. Implementujte správu front nedoručených zpráv, aby se zabránilo neomezené akumulace zpráv, které selhaly. Nakonfigurujte zásady uchovávání zpráv na základě skutečných požadavků. Nastavte okna detekce duplicit podle skutečných potřeb místo maximálních hodnot.

    • Snižte náklady na přenos dat a sítě. Dávkování více zpráv do jedné operace za účelem snížení fakturovatelných operací Umístěte společně obory názvů služby Service Bus se spotřebovávajícími aplikacemi, abyste eliminovali poplatky za výstupní přenos dat mezi oblastmi.

    • Implementujte kompresi zpráv a efektivní serializaci, abyste minimalizovali velikosti datových částí. Tím se sníží náklady na úložiště i poplatky za přenos sítě a zvýší se propustnost.

    • Dynamicky upravte kapacitu na základě vzorů využití. Monitorujte sezónní odchylky a kolísání obchodních cyklů pro lepší plánování kapacity. Proaktivní úpravy brání nadměrnému zřizování během období s nízkou poptávkou a současně zajišťují odpovídající kapacitu ve špičce.

  • Implementace ovládacích prvků Azure Policy pro správu nákladů služby Service Bus: Implementujte kontrolní mechanismy Azure Policy, které vynucují standardy správy nákladů. Definujte zásady, které omezují nasazení na úrovni služby Service Bus, omezují nasazení na nákladově efektivní oblasti a řídí nákladné funkce, jako je geografické zotavení po havárii. Tyto mantinely brání neoprávněným konfiguracím s vysokými náklady.

  • Optimalizace konfigurací služby Service Bus v různých prostředích: Návrh automatizovaného zřizování prostředí s výchozími náklady optimalizovanými pro každé prostředí Šablony by měly zahrnovat rozumné konfigurace, které vyrovnává funkčnost s nákladovou efektivitou na základě účelu prostředí.

    Přiřaďte schopnosti služby Service Bus k aktuálním požadavkům prostředí. Produkční prostředí potřebuje redundanci zón, geografickou replikaci nebo geografické zotavení po havárii a vyhrazenou propustnost. Neprodukční prostředí můžou používat zjednodušené sady funkcí, nižší propustnost a záruky snížené dostupnosti, aby se minimalizovaly náklady.

  • Implementace strategií konsolidace služby Service Bus pro snížení nákladů: Sdílejte prostředky služby Service Bus mezi aplikacemi, pokud to umožňují bezpečnostní a provozní hranice. Konsolidované obory názvů zlepšují využití jednotek zasílání zpráv prostřednictvím sdílení prostředků a snižují celkové náklady. Implementujte označování prostředků, abyste umožnili přidělování nákladů napříč odděleními a projekty a podporovali modely vracení peněz ve víceklientských prostředích.

Doporučení pro konfiguraci

Recommendation Prospěch
Implementujte konzistentní strategie označování pro obory názvů služby Service Bus. Zahrňte značky nákladového centra, projektu a prostředí, které umožňují přesné přidělování nákladů a podporu modelů vracení peněz. Označování umožňuje přisouzení nákladů napříč sdílenou infrastrukturou a podporuje strukturované modely vracení peněz pro nasazení služby Service Bus s více tenanty.
Pomocí služby Azure Cost Management můžete analyzovat vzorce svazků zpráv a počty operací. Zkontrolujte historická data a identifikujte optimální výběr vrstev pro aktuální a předpokládané vzory využití.

Nakonfigurujte upozornění rozpočtu s více prahovými hodnotami na 50%, 75%a 90% limitů rozpočtu. Průběžné výstrahy poskytují včasné upozornění před významnými překročeními.
Výběr úrovně řízené daty zajišťuje optimální efektivitu nákladů tím, že porovnává cenové modely se skutečnými vzory využití, a ne předpoklady. Rozhodnutí založená na důkazech brání nadměrnému zřizování.

Upozornění rozpočtu s více prahovými hodnotami poskytují odstupňovaný systém upozornění, který umožňuje proaktivní správu nákladů bez zbytečného přerušení provozu.
Konfigurujte zásady uchovávání zpráv na základě skutečných požadavků na aplikace a nepoužívejte maximální hodnoty. Nastavte okna detekce duplicit podle skutečných obchodních potřeb k vyvážení funkcí s nákladovou efektivitou. Eliminuje zbytečné režijní náklady na trvalost a zpracování zpráv a současně vyrovnává požadavky na prevenci duplicit s nákladovou efektivitou prostřednictvím vhodné konfigurace.
Implementujte dávkování zpráv v klientských aplikacích služby Service Bus, abyste snížili fakturovatelné operace. Nakonfigurujte velikosti dávek na základě vzorů objemů zpráv a požadavků na latenci pro optimalizaci nákladů. Snižuje počty operací a zlepšuje nákladovou efektivitu v úrovních plateb za operace. Snižuje náklady na úlohy zasílání zpráv s velkým objemem prostřednictvím optimalizovaných poplatků za provoz.
Optimalizujte velikosti datových částí zpráv prostřednictvím komprese a efektivních formátů serializace. Menší datové části snižují náklady na úložiště, poplatky za výchozí přenos dat sítě a zvyšují propustnost. Snižuje náklady na úložiště a poplatky za výchozí přenos dat sítě a současně umožňuje více zpráv na jednotku zasílání zpráv, aby se zlepšilo využití kapacity a nákladová efektivita.
Implementujte automatizované postupy vyčištění fronty nedoručených zpráv , aby se zabránilo neshromážděné akumulace úložiště. Nakonfigurujte naplánované procesy tak, aby odebraly starší neúspěšné zprávy na základě věku nebo stavu řešení.

Vyvážit frekvenci čištění s požadavky na řešení potíží. Zachování dostatečných období uchovávání pro provozní analýzu a řízení nákladů na úložiště
Zabraňuje neomezenému nárůstu nákladů na úložiště při akumulaci neúspěšných zpráv, optimalizuje dlouhodobé náklady bez ohrožení schopností řešení provozních potíží.
Umístěte obory názvů služby Service Bus společně s producenty a konzumenty zpráv ve stejné oblasti Azure. Regionální nasazení eliminuje náklady na přenos dat mezi oblastmi a snižuje latenci sítě. Eliminuje poplatky za přenos dat mezi oblastmi a zjednodušuje síťovou architekturu, přičemž snižuje náklady na přenos i latenci.

Efektivita provozu

Operační dokonalost se primárně zaměřuje na vývojové postupy, pozorovatelnost a správu verzí. Principy návrhu efektivity provozu poskytují strategii návrhu vysoké úrovně pro dosažení těchto cílů pro provozní požadavky úlohy.

Kontrolní seznam návrhu úloh

Zahajte strategii návrhu na základě kontrolního seznamu kontroly návrhu pro efektivitu provozu pro definování procesů pozorovatelnosti, testování a nasazení souvisejících se službou Azure Service Bus.

  • Posouzení připravenosti týmu pro provoz služby Service Bus: Operace služby Service Bus vyžadují specializované znalosti v oblasti zasílání zpráv, jako je správa front s nedoručenou zprávou, zpracování životního cyklu zpráv a konfigurace zabezpečení. Týmy potřebují znalost metod ověřování, včetně zásad sdíleného přístupu, spravované identity a implementace Azure RBAC.

  • Implementace infrastruktury jako kódu pro nasazení služby Service Bus: Infrastruktura služby Service Bus podporuje šablony ARM, Bicep a Terraform pro konzistentní nasazení napříč prostředími. Šablony by měly zahrnovat konfiguraci oboru názvů, definice front a témat, filtry předplatného a zásady přístupu pro úplnou správu infrastruktury. Pomocí parametrizace šablony můžete povolit konfigurace specifické pro prostředí při zachování konzistence nasazení. Další informace najdete v tématu Šablony oborů názvů služby Service Bus.

    Zvažte vrstvené strategie nasazení pro oddělení zřizování oborů názvů od konfigurace entit, když závislosti, jako jsou spravované identity, vyžadují sekvenční zřizování.

    Správa verzí pro konfiguraci služby Service Bus zajišťuje auditovatelnost a poskytuje možnosti vrácení zpět pro změny infrastruktury.

  • Vytvořte postupy bezpečného nasazení pro infrastrukturu zasílání zpráv: Zahrňte blue-green nasazení pro změny přepínačů jmenného prostoru a kanárková nasazení pro změny filtru předplatného. Modré zelené strategie umožňují přechody bez výpadků, zatímco kanárské nasazení ověřují směrování před úplným uvedením.

    Ujistěte se, že existují kontroly ověření nasazení, které zajistí kontinuitu zasílání zpráv během aktualizací infrastruktury. Zahrnuje testování směrování zpráv, filtrů odběrů a konfigurací fronty nedoručených zpráv.

  • Vytvořit automatizační strategie pro provozní úkoly služby Service Bus: V případech, kde je to možné, by automatizace měla mířit na opakující se provozní úkoly služby Service Bus. Vyhodnoťte možnosti automatizace pracovních postupů v Azure Logic Apps, Azure Functions a Azure Automation.

    Mezi příležitosti automatizace klíčů patří vyčištění fronty nedoručených zpráv, aby se zabránilo akumulace prostředků a odebrání zpráv s vypršenou platností za účelem řízení nákladů na úložiště. Plánované operace škálování můžou upravit kapacitu na základě předvídatelných vzorů využití.

    Mezi další cíle automatizace patří údržba předplatného, obměna zásad přístupu a monitorování kapacity oboru názvů; aby se snížila provozní režie a zajistily se konzistentní postupy správy.

  • Shromažďujte monitorovací data: Monitorujte stav průtoku zpráv, výkonové metriky oboru názvů a závislosti. Integrace služby Azure Monitor poskytuje základní metriky, protokoly a distribuované možnosti trasování pro infrastrukturu zasílání zpráv. Kritická telemetrie zahrnuje míry propustnosti zpráv, trendy hloubky fronty, akumulace nedoručených písmen, události omezování a využití fondu připojení. Application Insights umožňuje kompletní trasování od vydavatelů přes Service Bus až po uživatele, aby bylo možné získat úplnou viditelnost.

  • Vytvořte postupy reakce na incidenty pro selhání zasílání zpráv: Řešte převzetí služeb při selhání oboru názvů a ujistěte se, že probíhá obnovení zpráv a obnovování předplatného. Geografická replikace poskytuje automatizované regionální převzetí služeb při selhání s replikací dat, a možnosti zotavení po havárii poskytují automatické regionální převzetí služeb při selhání pouze s metadaty při správné konfiguraci.

    Strategie odezvy musí zohledňovat záruky řazení zpráv, duplicitní zpracování, ověřování směrování a filtrů a postupy ručního zásahu pro složité scénáře obnovení při zachování záruk doručení.

  • Implementace testovacích strategií pro infrastrukturu zasílání zpráv: Zahrnuje funkční testování vzorů zasílání zpráv, testování integrace a ověřování směrování, filtrů a logiky zpracování. Zátěžové testování ověřuje charakteristiky výkonu v očekávaných objemech provozu.

    Testování automatizace prostřednictvím kanálů CI/CD zajišťuje konzistentní ověřování změn infrastruktury zasílání zpráv a scénářů integrace aplikací.

  • Vyhodnoťte výběr rozhraní API pro zasílání zpráv tak, aby odpovídal sadě dovedností vašeho týmu: Service Bus podporuje nativní rozhraní API sady Azure SDK i JMS 2.0 pro aplikace v Javě. Každá z nich poskytuje různé funkce a charakteristiky výkonu. Výběr rozhraní API by měl odpovídat týmovým znalostem a požadavkům na aplikace.

    Nativní sady SDK poskytují úplný přístup k funkcím služby Service Bus, včetně relací, detekce duplicit a automatického předávání s využitím optimalizací specifických pro Azure. Tyto sady SDK poskytují úplný přístup k funkcím a optimální charakteristiky výkonu.

    Rozhraní JMS API nabízí standardizované rozhraní pro zasílání zpráv, ale s omezeními, včetně nedostupnosti relací služby Service Bus a nižších možností výkonu v porovnání s nativními implementacemi.

Doporučení pro konfiguraci

Recommendation Prospěch
Vyvíjejte šablony ARM nebo moduly Bicep pro konfiguraci oboru názvů služby Service Bus s podporou parametrizace pro nastavení specifická pro prostředí, entity zasílání zpráv, zásady přístupu a integrace služeb. Zajišťuje konzistentní nasazení v různých prostředích a zároveň snižuje odchylku konfigurace prostřednictvím automatizovaného poskytování. Umožňuje rychlé obnovení prostřednictvím obnovy infrastruktury založené na šablonách a udržuje podrobné záznamy auditu pro dodržování předpisů.
Vytváření automatizovaných pracovních postupů pomocí Azure Logic Apps nebo Azure Functions pro zpracování provozních úloh, včetně vyčištění fronty nedoručených zpráv, údržby předplatného a obměny zásad přístupu Snižuje ruční režii a zajišťuje konzistentní provozní postupy prostřednictvím automatizace řízené událostmi a plánovaného provádění údržby.
Nakonfigurujte řídicí panely Azure Monitoru a pravidla upozornění pro metriky služby Service Bus , včetně počtu zpráv, míry propustnosti, chybových podmínek a stavu závislostí v rámci obchodního kontextu. Umožňuje včasné zjišťování problémů se zasíláním zpráv a podporuje proaktivní správu kapacity. Zkracuje střední dobu detekce a řešení a zároveň usnadňuje efektivní řešení potíží prostřednictvím vlastních řídicích panelů.
Vyvíjejte playbooky reakce na incidenty, které dokumentují strategie opětovného zpracování zpráv, postupy převzetí služeb při selhání oboru názvů a pracovní postupy obnovení fronty s jasnými eskalačními protokoly.

Proveďte pravidelné testování, abyste ověřili efektivitu playbooku a zajistili připravenost týmu pro scénáře tísňového volání.
Zajišťuje konzistentní zpracování incidentů a zkracuje dobu obnovení prostřednictvím zdokumentovaných postupů. Minimalizuje ztrátu zpráv a zároveň umožňuje rychlejší řešení prostřednictvím systematických strategií reakce.

Efektivita výkonu

Výkonnostní efektivita se týká zachování uživatelského zážitku i při rostoucím zatížení řízením kapacity. Strategie zahrnuje škálování prostředků, identifikaci a optimalizaci potenciálních kritických bodů a optimalizaci výkonu ve špičce.

Návrhové principy efektivity výkonu poskytují strategii návrhu na vysoké úrovni pro dosažení cílů kapacity s ohledem na očekávané využití.

Kontrolní seznam návrhu úloh

Zahajte strategii návrhu na základě kontrolního seznamu pro kontrolu efektivity výkonu. Definujte směrný plán založený na klíčových ukazatelích výkonu služby Azure Service Bus.

  • Plánování kapacity pro úlohy služby Service Bus: Plánování kapacity služby Service Bus vyžaduje analýzu očekávaných svazků zpráv a požadavků na maximální propustnost prostřednictvím systematického hodnocení. Zátěžový test se vzory realistických zpráv za účelem ověření odhadů kapacity před produkčním nasazením

    Při stanovování základní kapacity zvažte rozdělení velikosti zpráv a vzory souběžných připojení. Zohledněte období uchovávání zpráv, úložiště fronty nedoručených zpráv a složitost filtrace předplatného, které ovlivňují celkovou spotřebu prostředků.

    Úroveň Premium poskytuje vyhrazené jednotky zasílání zpráv s předvídatelnými charakteristikami výkonu a zaručenou kapacitou. Nižší úrovně používají sdílenou infrastrukturu s proměnlivým výkonem, kde během špičkových období může dojít k omezování výkonu kvůli efektu hlučných sousedů.

  • Strategie škálování návrhu pro úlohy zpracování zpráv: Strategie škálování služby Service Bus by měly zahrnovat přístupy horizontálního, vertikálního a architektonického škálování, které řeší různé požadavky na výkon.

    Horizontální škálování zahrnuje dělené entity, které distribuují zprávy mezi více zprostředkovatelů zpráv, zlepšují propustnost a paralelismus. Dělení ale vytváří kompromisy, kdy vylepšená škálovatelnost může ovlivnit záruky řazení a transakční konzistenci s dělenými entitami.

    Jednotka zasílání zpráv na úrovni Premium zvyšuje vyhrazenou kapacitu s možnostmi automatické úpravy dynamických úloh. Škálování architektury prostřednictvím distribuce oboru názvů napříč oblastmi podporuje globální úlohy s regionální optimalizací výkonu.

  • Konfigurace vzorů zpracování zpráv pro optimální propustnost: Vzorce zpracování zpráv výrazně ovlivňují propustnost služby Service Bus a celkový výkon aplikace. Dávkové zpracování snižuje dobu odezvy sítě odesíláním nebo příjmem více zpráv v jednotlivých operacích, což zvyšuje efektivitu. Odběry témat s filtrováním umožňují scénáře rozšířené distribuce pro rozesílání zpráv.

    Paralelní zpracování pomocí více souběžných příjemců zvyšuje celkovou propustnost pro úlohy založené na frontě. Zasílání zpráv založené na relacích zajišťuje uspořádané zpracování souvisejících zpráv, ale vytváří omezení propustnosti omezením paralelismu na jednoho aktivního příjemce na relaci.

  • Monitorování ukazatelů výkonu a identifikace kritických bodů: Monitorování výkonu služby Service Bus vyžaduje sledování klíčových metrik, včetně metrik propustnosti zpráv, trendů hloubky fronty, latence zpracování a událostí omezování. Monitorujte využití fondu připojení pro posouzení výkonu v infrastruktuře zasílání zpráv.

    Identifikujte kritické body tím, že se zaměříte na omezování na úrovni oboru názvů a zpoždění zpracování filtru předplatného, které můžou mít vliv na celkovou propustnost.

  • Optimalizace zpracování zpráv a výkonu sítě: Optimalizace zpracování zpráv zahrnuje sdružování připojení, konfiguraci předběžného načtení a dávkování zpráv za účelem zlepšení výkonu na straně klienta. Optimalizace velikosti datové části snižuje režii sítě a zlepšuje efektivitu zpracování.

    Nastavení předběžného načtení umožňuje klientům aktivně přijímat více zpráv, což snižuje dopad latence sítě na propustnost zpracování zpráv. Optimalizace výkonu sítě zahrnuje společné umístění oborů názvů služby Service Bus s producenty zpráv a příjemci prostřednictvím regionálního umístění, které zajišťuje minimalizaci latence.

Doporučení pro konfiguraci

Recommendation Prospěch
Vyberte úroveň Service Bus Premium pro produkční úlohy vyžadující zaručený výkon. Úroveň Premium poskytuje vyhrazené jednotky zasílání zpráv s předvídatelnými charakteristikami výkonu a umožňuje pokročilé funkce, jako jsou větší velikosti zpráv s funkcemi automatického škálování. Vyhrazené jednotky zasílání zpráv eliminují problémy s proměnlivým výkonem ze sdílené infrastruktury. Konzistentní propustnost zaručuje předvídatelný výkon aplikace pro úlohy produkčního zasílání zpráv.
Povolte automatické škálování pro Service Bus Premium s nakonfigurovanými minimálními a maximálními prahovými hodnotami jednotek zasílání zpráv. Nastavte minimální jednotky pro řešení základní zátěže bez zpoždění při škálování.

Implementujte několik souběžných příjemců pro distribuci zatížení zpracování zpráv napříč dostupnou kapacitou.
Vylepšené využití prostředků prostřednictvím dynamického přidělování kapacity, které odpovídá skutečné poptávce. Eliminuje ruční zásah pro správu kapacity během změn zatížení při zachování konzistentního výkonu.
Implementujte dávkové operace zpráv pomocí metod ReceiveMessages() a SendMessages(), abyste snížili zatížení sítě a režijní náklady na připojení.

Implementujte zpracování chyb pro dávkové operace, abyste mohli spravovat částečná selhání a udržovat spolehlivost.
Zlepšuje efektivitu zpracování zpráv výrazně v porovnání s jednotlivými operacemi prostřednictvím snížené režie na síť. Vyšší celková propustnost se stejnými prostředky infrastruktury kvůli snížené režii na správu připojení.

Lepší výkon aplikace pro scénáře hromadného zpracování zpráv s optimalizovaným využitím prostředků
Nakonfigurujte řídicí panely služby Azure Monitor s metrikami výkonu služby Service Bus, včetně rychlosti propustnosti zpráv, trendů hloubky fronty a latence zpracování. Monitorujte události omezování a chyby serveru jako indikátory výkonu.

Nastavte sledování percentilu latence a nakonfigurujte prahové hodnoty upozornění pro proaktivní detekci problémů.
Poskytuje přehled o stavu infrastruktury zasílání zpráv a trendech výkonu v reálném čase. Umožňuje včasné zjišťování snížení výkonu před dopadem uživatelů prostřednictvím proaktivního upozorňování.

Podporuje plánování kapacity řízené daty a rozhodování o optimalizaci výkonu na základě empirických metrik.
Pomocí zátěžového testování Azure můžete simulovat reálné úlohy služby Service Bus s očekávanými svazky zpráv a souběžnými vzory vydavatele a příjemce. Zahrňte scénáře s různou velikostí zpráv a složitostí zpracování.

Otestujte chování automatického škálování a prahové hodnoty omezování během špiček zatížení při měření celkové latence. Zdokumentování standardních hodnot výkonu a limitů kapacity pro plánování výroby
Ověřuje výkon infrastruktury zasílání zpráv za reálných podmínek před produkčním nasazením. Identifikuje potenciální kritické body a omezení kapacity v rané fázi vývojového cyklu.

Poskytuje empirická data pro přesná rozhodnutí o plánování kapacity a strategie optimalizace výkonu.
Optimalizujte konfiguraci klienta služby Service Bus s odpovídajícími počty předčítání, sdružováním připojení a dávkováním zpráv, aby se zlepšila efektivita. Optimalizujte velikost a kompresi zpráv, abyste snížili využití šířky pásma sítě.

Umístěte společně obory názvů služby Service Bus s aplikacemi ve stejném regionu Azure, aby se minimalizovala latence. Mezi další prostředky patří vylepšení výkonu služby Service Bus.
Vylepšili jsme efektivitu zpracování zpráv prostřednictvím optimalizace klienta a snížili režijní náklady na připojení. Nižší latence prostřednictvím regionálního umístění, které minimalizuje vzdálenost sítě mezi aplikacemi a infrastrukturou služby Service Bus.
Pokud je to možné, používejte expresní entity k ukládání zpráv do paměti, pokud je to možné pro zvýšení výkonu. Nakonfigurujte expresní fronty a témata prostřednictvím vlastnosti EnableExpress při vyhodnocování kompromisu mezi optimalizací výkonu a zajištěním stálosti. Vylepšený výkon zpracování zpráv prostřednictvím optimalizovaného úložiště v paměti, pokud to požadavky na stálost umožňují. Nižší latence pro scénáře zasílání zpráv s vysokou propustností s vylepšenou odezvou

Zásady Azure

Azure poskytuje rozsáhlou sadu předdefinovaných zásad souvisejících se službou Azure Service Bus a jejími závislostmi. Některé z předchozích doporučení je možné auditovat prostřednictvím služby Azure Policy. Můžete například zkontrolovat, jestli:

  • Azure Service Bus Premium prostředí používají klíče spravované zákazníkem pro šifrování neaktivních dat, čímž umožňují lepší kontrolu nad šifrovacími klíči a splnění požadavků na compliance.
  • Obory názvů služby Azure Service Bus výhradně vyžadují identity Microsoft Entra ID pro ověřování, aby se zvýšilo zabezpečení a snížila režijní zátěž na správu.
  • Obory názvů služby Azure Service Bus se konfigurují s privátními koncovými body, aby se snížila rizika úniku dat.
  • Protokoly prostředků ve službě Azure Service Bus umožňují generovat záznamy auditu, které se použijí pro účely šetření, když dojde k incidentu zabezpečení.

Komplexní zásady správného řízení najdete v předdefinovaných definicích služby Azure Policy pro Service Bus a další zásady, které by mohly ovlivnit zabezpečení infrastruktury zasílání zpráv.

Doporučení azure Advisoru

Azure Advisor je individuální cloudový konzultant, který vám pomůže postupovat podle osvědčených postupů pro optimalizaci nasazení Azure.

Další informace najdete v tématu o službě Azure Advisor.

Příklad architektury

Základní architektura, která demonstruje klíčová doporučení: Podniková integrace s využitím zprostředkovatele zpráv