Co je Azure Service Bus?What is Azure Service Bus?

Microsoft Azure Service Bus je plně spravovaný zprostředkovatel zpráv Enterprise Integration.Microsoft Azure Service Bus is a fully managed enterprise integration message broker. Service Bus se nejčastěji používá k vzájemnému oddělení aplikací a služeb a je spolehlivou a bezpečnou platformou pro přenos asynchronních dat a stavu.Service Bus is most commonly used to decouple applications and services from each other, and is a reliable and secure platform for asynchronous data and state transfer. Data se mezi různými aplikacemi a službami přenáší pomocí zpráv.Data is transferred between different applications and services using messages. Zpráva je v binárním formátu, který může obsahovat JSON, XML nebo jenom text.A message is in binary format, which can contain JSON, XML, or just text.

Mezi běžné scénáře zasílání zpráv patří:Some common messaging scenarios are:

  • Zasílání zpráv: umožňuje přenášení podnikových dat, jako jsou například prodeje nebo nákupní objednávky, deníky nebo přesuny zásob.Messaging: transfer business data, such as sales or purchase orders, journals, or inventory movements.
  • Oddělení aplikací: vylepšuje spolehlivost a škálovatelnost aplikací a služeb (klient a služba nemusí být online ve stejnou dobu).Decouple applications: improve reliability and scalability of applications and services (client and service do not have to be online at the same time).
  • Témata a předplatná: povoluje vztahy 1:n mezi vydavateli a odběrateli.Topics and subscriptions: enable 1:n relationships between publishers and subscribers.
  • Relace zpráv: implementuje pracovní postupy, které vyžadují řazení zpráv nebo odložení zpráv.Message sessions: implement workflows that require message ordering or message deferral.

Názvové prostoryNamespaces

Obor názvů je kontejner oboru pro všechny součásti zasílání zpráv.A namespace is a scoping container for all messaging components. Součástí jednoho oboru názvů může být několik front a témat, přičemž obory názvů často slouží jako kontejnery aplikací.Multiple queues and topics can reside within a single namespace, and namespaces often serve as application containers.

FrontyQueues

Zprávy se odesílají do front a přijímají se z nich.Messages are sent to and received from queues. Fronty umožňují uložit zprávy, dokud není přijímající aplikace dostupná pro jejich příjem a zpracování.Queues enable you to store messages until the receiving application is available to receive and process them.

Fronta

Zprávy ve frontách jsou seřazené a mají časové razítko při příjezdu.Messages in queues are ordered and timestamped on arrival. Jakmile je zpráva přijata, uchovává se bezpečně v redundantním úložišti.Once accepted, the message is held safely in redundant storage. Zprávy jsou doručovány v režimu Pull , který doručuje zprávy na vyžádání.Messages are delivered in pull mode, which delivers messages on request.

TémataTopics

K odesílání a přijímání zpráv můžete také použít témata.You can also use topics to send and receive messages. Zatímco fronta se často používá pro komunikaci point-to-point, témata jsou užitečná ve scénářích publikování nebo přihlášení k odběru.While a queue is often used for point-to-point communication, topics are useful in publish/subscribe scenarios.

Téma

Témata mohou mít několik nezávislých odběrů.Topics can have multiple, independent subscriptions. Odběratel tématu může přijímat kopie všech zpráv zaslaných do daného tématu.A subscriber to a topic can receive a copy of each message sent to that topic. Odběry jsou pojmenované entity, které jsou vytvořené jako trvalé, ale jejich platnost může vypršet nebo se mohou automaticky odstranit.Subscriptions are named entities, which are durably created but can optionally expire or auto-delete.

V některých scénářích nemusíte chtít, aby jednotlivé odběry přijímaly všechny zprávy odeslané do tématu.In some scenarios, you may not want individual subscriptions to receive all messages sent to a topic. Pokud tomu tak je, můžete použít pravidla a filtry a definovat podmínky, které vyvolají volitelné akce, filtrují zadané zprávy a nastavují nebo upravují vlastnosti zpráv.If so, you can use rules and filters to define conditions that trigger optional actions, filter specified messages, and set or modify message properties.

Pokročilé funkceAdvanced features

Service Bus má také pokročilé funkce, které vám umožní řešit složitější problémy týkající se zasílání zpráv.Service Bus also has advanced features that enable you to solve more complex messaging problems. Následující části popisují tyto klíčové funkce:The following sections describe these key features:

Relace zprávMessage sessions

Pokud chcete ve službě Service Bus zajistit použití metody FIFO (first in first out), použijte relace.To realize a first-in, first-out (FIFO) guarantee in Service Bus, use sessions. Relace zpráv umožňují společné a seřazené zpracování sekvencí souvisejících zpráv bez vazby.Message sessions enable joint and ordered handling of unbounded sequences of related messages.

Automatické přeposíláníAuto-forwarding

Funkce automatického přeposílání umožňuje zřetězit frontu nebo odběr do jiné fronty nebo tématu, které jsou součástí stejného oboru názvů.The auto-forwarding feature enables you to chain a queue or subscription to another queue or topic that is part of the same namespace. Pokud je automatické přeposílání povoleno, Service Bus automaticky odebere zprávy, které jsou umístěné v první frontě nebo odběru (zdroj) a vloží je do druhé fronty nebo tématu (cíl).When auto-forwarding is enabled, Service Bus automatically removes messages that are placed in the first queue or subscription (source) and puts them in the second queue or topic (destination).

Ukládání nedoručených zprávDead-lettering

Service Bus podporuje frontu nedoručených zpráv (DLQ) k ukládání zpráv, které nemohou být doručeny jakémukoli příjemci, nebo zpráv, které nejdou zpracovat.Service Bus supports a dead-letter queue (DLQ) to hold messages that cannot be delivered to any receiver, or messages that cannot be processed. Zprávy pak můžete z DLQ odebrat a prozkoumat je.You can then remove messages from the DLQ and inspect them.

Naplánované doručeníScheduled delivery

Zprávy můžete odeslat do fronty nebo tématu pro zpožděné zpracování. Můžete třeba naplánovat úlohu, která bude systému pro zpracování dostupná v konkrétní čas.You can submit messages to a queue or topic for delayed processing; for example, to schedule a job to become available for processing by a system at a certain time.

Odložení zprávMessage deferral

Pokud klient fronty nebo odběru přijme zprávu, kterou je ochoten zpracovat, ale jejíž zpracování momentálně není možné z důvodu zvláštních okolností v aplikaci, má entita možnost odložit načtení zprávy na pozdější čas.When a queue or subscription client receives a message that it is willing to process, but for which processing is not currently possible due to special circumstances within the application, the entity has the option to defer retrieval of the message to a later point. Zpráva zůstane ve frontě nebo odběru, ale odloží se bokem.The message remains in the queue or subscription, but it is set aside.

DávkováníBatching

Dávkování na straně klienta umožňuje, aby klient fronty nebo tématu zpozdil odeslání zprávy po určené časové období.Client-side batching enables a queue or topic client to delay sending a message for a certain period of time. Pokud během tohoto časového období klient odešle další zprávy, přenese zprávy v jedné dávce.If the client sends additional messages during this time period, it transmits the messages in a single batch.

TransakceTransactions

Skupiny transakcí seskupují dvě nebo více operací do rozsahu provádění.A transaction groups two or more operations together into an execution scope. Service Bus podporuje operace seskupení u jedné entity zasílání zpráv (fronty, tématu, odběru) v rámci oboru transakce.Service Bus supports grouping operations against a single messaging entity (queue, topic, subscription) within the scope of a transaction.

Filtrování a akceFiltering and actions

Odběratelé mohou definovat zprávy, které chtějí z tématu přijímat.Subscribers can define which messages they want to receive from a topic. Tyto zprávy se určují ve formě jednoho nebo více pojmenovaných pravidel odběru.These messages are specified in the form of one or more named subscription rules. Pro každou odpovídající podmínku pravidla odběr vytvoří kopii zprávy, která může pro každé odpovídající pravidlo obsahovat jiné poznámky.For each matching rule condition, the subscription produces a copy of the message, which may be differently annotated for each matching rule.

Automatické odstranění v případě nečinnostiAuto-delete on idle

Automatické odstranění v případě nečinnosti umožňuje zadat interval nečinnosti, po jehož uplynutí se fronta automaticky odstraní.Auto-delete on idle enables you to specify an idle interval after which the queue is automatically deleted. Minimální doba trvání je 5 minut.The minimum duration is 5 minutes.

Vyhledávání duplicitDuplicate detection

Pokud dojde k chybě, která způsobí, že klient bude mít pochybnosti o výsledku operace odeslání, zjistí duplicity nejisté pochybnosti, že odesílatel může znovu odeslat stejnou zprávu, a fronta nebo téma zruší jakékoli duplicity. zkopíruje.If an error occurs that causes the client to have any doubt about the outcome of a send operation, duplicate detection takes the doubt out of these situations by enabling the sender to re-send the same message, and the queue or topic discards any duplicate copies.

SAS, RBAC a spravované identity pro prostředky AzureSAS, RBAC, and Managed identities for Azure resources

Service Bus podporuje protokoly zabezpečení, jako jsou sdílené přístupové podpisy (SAS), řízení přístupu na základě role (RBAC) a spravované identity pro prostředky Azure.Service Bus supports security protocols such as Shared Access Signatures (SAS), Role Based Access Control (RBAC) and Managed identities for Azure resources.

Geografické zotavení po haváriiGeo-disaster recovery

Pokud v oblastech nebo datových centrech Azure dojde k výpadku, geografické zotavení po havárii umožní, aby zpracování dat pokračovalo v jiné oblasti nebo datovém centru.When Azure regions or datacenters experience downtime, Geo-disaster recovery enables data processing to continue operating in a different region or datacenter.

ZabezpečeníSecurity

Service Bus podporuje standardní protokoly AMQP 1.0 a HTTP/REST.Service Bus supports standard AMQP 1.0 and HTTP/REST protocols.

Klientské knihovnyClient libraries

Service Bus podporuje klientské knihovny pro .NET, Javu, JMS.Service Bus supports client libraries for .NET, Java, JMS.

IntegraceIntegration

Service Bus umožňuje úplnou integraci s následujícími službami Azure:Service Bus fully integrates with the following Azure services:

Další postupNext steps

Pokud chcete začít používat zasílání zpráv služby Service Bus, podívejte se na následující články:To get started using Service Bus messaging, see the following articles: