Řetězení entit služby Service Bus s automatickým překvářením

Funkce automatického vytváření služby Service Bus umožňuje zřetězený frontu nebo odběr do jiné fronty nebo tématu, která je součástí stejného oboru názvů. Když je povolené automatické přechánění, Service Bus automaticky odebere zprávy umístěné v první frontě nebo odběru (zdroji) a umístí je do druhé fronty nebo tématu (cíl). Stále je možné odeslat zprávu přímo cílové entitě.

Poznámka:

Úroveň Basic služby Service Bus nepodporuje funkci automatického převrácení. Rozdíly mezi úrovněmi najdete v tématu Ceny služby Service Bus.

Cílová entita musí existovat v době vytvoření zdrojové entity. Pokud cílová entita neexistuje, service Bus vrátí výjimku, když se zobrazí výzva k vytvoření zdrojové entity.

Scénáře

Horizontální navýšení kapacity jednotlivých témat

K horizontálnímu navýšení kapacity jednotlivých témat můžete použít automatické překládání. Service Bus omezuje počet odběrů daného tématu na 2 000. Další odběry můžete pojmout vytvořením témat druhé úrovně. I když nejste vázáni omezením služby Service Bus na počet odběrů, přidání druhé úrovně témat může zlepšit celkovou propustnost vašeho tématu.

Diagram scénáře automatického převládání znázorňující zprávu zpracovanou prostřednictvím tématu Objednávky, které může větvet do některé ze tří témat objednávek druhé úrovně

Oddělení odesílatelů zpráv od příjemců

K oddělení odesílatelů zpráv odpříjemcůch Představte si například systém erp (Enterprise Resource Planning), který se skládá ze tří modulů: zpracování objednávek, řízení zásob a řízení vztahů se zákazníky. Každý z těchto modulů generuje zprávy, které jsou zapsány do odpovídajícího tématu. Alice a Bob jsou obchodní zástupci, kteří mají zájem o všechny zprávy, které se týkají jejich zákazníků. Pokud chcete tyto zprávy přijmout, Alice a Bob každý vytvoří osobní frontu a odběr pro každou z témat ERP, která automaticky přeposílají všechny zprávy do fronty.

Diagram scénáře automatického přechánění znázorňující tři moduly zpracování odesílaných zpráv prostřednictvím tří odpovídajících témat do dvou samostatných front

Pokud Alice chodí na dovolenou, její osobní fronta místo tématu ERP se vyplní. V tomto scénáři, protože obchodní zástupce neobdržel žádné zprávy, žádná z témat ERP nikdy nedosahovala kvóty.

Poznámka:

Při nastavení automatického převlékání se hodnota zdrojové AutoDeleteOnIdle entity automaticky nastaví na maximální hodnotu datového typu.

  • Na straně zdroje funguje automatické převozování jako operace příjmu, takže zdroj s povoleným automatickým odvozováním není nikdy ve skutečnosti "nečinný", a proto se automaticky neodstraní.
  • Automatické převlékání neprovádí žádné změny cílové entity. Pokud AutoDeleteOnIdle je u cílové entity povolená, entita se automaticky odstraní, pokud je neaktivní pro zadaný interval nečinnosti. Doporučujeme nepovolit AutoDeleteOnIdle cílovou entitu, protože pokud je cílová entita odstraněná, zdrojová entita při pokusu o přeposílání zpráv v tomto cíli průběžně uvidí výjimky.

Důležité informace týkající se automatického zpronažení

  • Service Bus neumožňuje vytvořit příjemce zprávy ve zdrojové entitě s povoleným automatickým přeforwardováním.
  • Pokud cílová entita shromažďuje příliš mnoho zpráv a překračuje kvótu nebo je cílová entita zakázaná, zdrojová entita přidá zprávy do fronty nedoručených zpráv, dokud není v cíli mezera (nebo se entita znovu povolí). Tyto zprávy nadále žijí ve frontě nedoručených zpráv, takže je musíte explicitně přijmout a zpracovat z fronty nedoručených zpráv.
  • Při zřetězování jednotlivých témat pro získání složeného tématu s mnoha předplatnými se doporučuje mít v tématu první úrovně a v tématech druhé úrovně velký počet odběrů. Například téma první úrovně s 20 předplatnými, zřetězený k tématu druhé úrovně s 200 předplatnými, umožňuje vyšší propustnost než téma první úrovně s 200 předplatnými, zřetězený k tématu druhé úrovně s 20 předplatnými.
  • Service Bus účtuje jednu operaci za každou přeposlanou zprávu. Například odeslání zprávy do tématu s 20 odběry, každý z nich nakonfigurovaný tak, aby automaticky přepošle zprávy do jiné fronty nebo tématu, se účtuje jako 21 operací, pokud všechna předplatná první úrovně obdrží kopii zprávy.
  • Pokud chcete vytvořit předplatné, které je zřetězený do jiné fronty nebo tématu, musí mít tvůrce předplatného oprávnění Spravovat pro zdrojovou i cílovou entitu. Odesílání zpráv do zdrojového tématu vyžaduje pouze oprávnění Odeslat ve zdrojovém tématu.
  • Nevytvařujte řetězec, který překračuje čtyři segmenty směrování. Zprávy, které překračují čtyři segmenty směrování, jsou nedoručené. Počet směrování zprávy se zvýší, když se zpráva automaticky přepíná z jedné fronty nebo tématu do jiné fronty nebo tématu. Počet směrování zprávy lze také zvýšit ve scénáři odeslání prostřednictvím scénáře, ve kterém se zpráva odesílá prostřednictvím fronty přenosu.
  • Automatické převlékání se nepodporuje pro fronty nebo předplatná s povolenými relacemi.
  • Zdrojová fronta se pokusí předávat zprávy cílové entitě ve stejném pořadí, v jakém byla přijata, ale cílem může být téma, které nepodporuje řazení. Pokud je zdrojová nebo cílová entita dělenou entitou, není zaručené pořadí.

Další kroky

Informace o povolení nebo zakázání automatického předávání různými způsoby (Azure Portal, PowerShell, rozhraní příkazového řádku, šablony Azure Resource Management atd.) najdete v tématu Povolení automatického předávání pro fronty a předplatná.