Vad är Azure Service Bus?What is Azure Service Bus?

Microsoft Azure Service Bus är en fullständigt hanterad integrationsmeddelandekoordinator för företag.Microsoft Azure Service Bus is a fully managed enterprise integration message broker. Service Bus används oftast att frikoppla program och tjänster från varandra och är en tillförlitlig och säker plattform för asynkrona data och överföring av tillstånd.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 överförs mellan olika program och tjänster med meddelanden.Data is transferred between different applications and services using messages. Meddelanden är i binärt format som kan innehålla JSON, XML eller endast text.A message is in binary format, which can contain JSON, XML, or just text.

Några vanliga scenarier för meddelanden är:Some common messaging scenarios are:

  • Meddelanden: Överför affärsdata, till exempel försäljning eller inköpsordrar, journaler eller ändringar i inventarier.Messaging: transfer business data, such as sales or purchase orders, journals, or inventory movements.
  • Frikoppla program: förbättra tillförlitligheten och skalbarheten för program och tjänster (klienten tjänsten behöver inte vara online samtidigt).Decouple applications: improve reliability and scalability of applications and services (client and service do not have to be online at the same time).
  • Ämnen och prenumerationer: aktivera 1:n relationer mellan utgivare och prenumeranter.Topics and subscriptions: enable 1:n relationships between publishers and subscribers.
  • Meddelandesessioner: Implementera arbetsflöden som kräver meddelandebeställning eller uppskjutning av meddelanden.Message sessions: implement workflows that require message ordering or message deferral.

NamnområdenNamespaces

Ett namnområde är en omfångscontainer för alla meddelandekomponenter.A namespace is a scoping container for all messaging components. Flera köer och ämnen kan finnas i ett enda namnområde och namnområden fungerar ofta som programcontainer.Multiple queues and topics can reside within a single namespace, and namespaces often serve as application containers.

KöerQueues

Meddelanden skickas till och tas emot från köer.Messages are sent to and received from queues. Med köer kan du lagra meddelanden tills det mottagande programmet kan ta emot och bearbeta dem.Queues enable you to store messages until the receiving application is available to receive and process them.

Kö

Meddelanden i köer sorteras och tidsstämplad anländer.Messages in queues are ordered and timestamped on arrival. När de har godkänts lagras meddelanden på ett säkert sätt i redundant lagring.Once accepted, the message is held safely in redundant storage. Meddelanden levereras i pull läge, som levererar meddelanden på begäran.Messages are delivered in pull mode, which delivers messages on request.

ÄmnenTopics

Du kan också använda ämnen för att skicka och ta emot meddelanden.You can also use topics to send and receive messages. Medan en kö oftast används för kommunikation från punkt till punkt är ämnen användbara i scenarier med publicering/prenumeration.While a queue is often used for point-to-point communication, topics are useful in publish/subscribe scenarios.

Ämne

Ämnen kan ha flera oberoende prenumerationer.Topics can have multiple, independent subscriptions. En prenumerant på ett ämne får en kopia av varje meddelande.A subscriber to a topic can receive a copy of each message sent to that topic. Prenumerationer är namngivna enheter som skapas varaktigt men kan eventuellt utgå eller tas bort automatiskt.Subscriptions are named entities, which are durably created but can optionally expire or auto-delete.

I vissa fall vill du kanske inte att individuella prenumerationer ska ta emot alla ämnen som skickas till ett ämne.In some scenarios, you may not want individual subscriptions to receive all messages sent to a topic. Om så är fallet bör du använda regler och filter för att definiera villkor som utlöser valfria åtgärder, filtrera angivna meddelanden och ange eller ändra egenskaperna för meddelanden.If so, you can use rules and filters to define conditions that trigger optional actions, filter specified messages, and set or modify message properties.

Avancerade funktionerAdvanced features

Service Bus har också avancerade funktioner som hjälper dig att lösa problem med mer komplexa meddelanden.Service Bus also has advanced features that enable you to solve more complex messaging problems. I följande avsnitt beskrivs dessa nyckelfunktioner:The following sections describe these key features:

MeddelandesessionerMessage sessions

Använda sessioner för att använda en först in-, först ut-garanti (FIFO) i Service Bus.To realize a first-in, first-out (FIFO) guarantee in Service Bus, use sessions. Meddelandesessioner aktiverar gemensamma och organiserad hantering av frigjorda sekvenser av relaterade meddelanden.Message sessions enable joint and ordered handling of unbounded sequences of related messages.

Automatisk vidarebefordringAuto-forwarding

Med funktionen automatisk vidarebefordring kan du koppla en kö eller en prenumeration på en annan kö eller ett ämne som ingår i samma namnområde.The auto-forwarding feature enables you to chain a queue or subscription to another queue or topic that is part of the same namespace. När automatisk vidarebefordring är aktiverat tar Service Bus automatiskt bort meddelanden som har placerats i den första kön eller prenumerationen (källan) och placerar dem i den andra kön eller ämnet (målet).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).

Olevererade brevDead-lettering

Service Bus stöder en kö med olevererade brev (DQL) för meddelanden som inte kan levereras till alla mottagare eller meddelanden som inte kan bearbetas.Service Bus supports a dead-letter queue (DLQ) to hold messages that cannot be delivered to any receiver, or messages that cannot be processed. Du kan ta bort meddelanden från DQL och inspektera dem.You can then remove messages from the DLQ and inspect them.

Schemalagd leveransScheduled delivery

Du kan skicka meddelanden till en kö eller ett ämne för fördröjd bearbetning, till exempel för att schemalägga ett jobb som ska bli tillgänglig för bearbetning av ett system vid en viss tidpunkt.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.

Skjut upp meddelandenMessage deferral

När en kö- eller prenumerationsklient tar emot ett meddelande som den är villig att bearbeta men det för tillfället inte är möjligt på grund av särskilda omständigheter i programmet, kan enheten skjuta upp hämtningen av meddelandet till ett senare tillfälle.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. Meddelandet finns kvar i kön eller prenumerationen, men det ställs åt sidan.The message remains in the queue or subscription, but it is set aside.

BatchbearbetningBatching

Med klientsidans batchbearbetning förhindras en kö- eller ämnesklient från att skicka ett meddelande under en viss tidsperiod.Client-side batching enables a queue or topic client to delay sending a message for a certain period of time. Om klienten skickar ytterligare meddelanden under den här tiden överförs dessa meddelanden i en enskild batch.If the client sends additional messages during this time period, it transmits the messages in a single batch.

TransaktionerTransactions

En transaktion grupperar två eller flera åtgärder tillsammans i en körning.A transaction groups two or more operations together into an execution scope. Service Bus stöder grupperingsåtgärder mot en enskild meddelandeenhet (kö, ämne, prenumeration) inom en transaktion.Service Bus supports grouping operations against a single messaging entity (queue, topic, subscription) within the scope of a transaction.

Filtrering och åtgärderFiltering and actions

Prenumeranter kan definiera vilka meddelanden som de vill ta emot från ett ämne.Subscribers can define which messages they want to receive from a topic. Dessa meddelanden anges i form av en eller flera namngivna prenumerationsregler.These messages are specified in the form of one or more named subscription rules. Prenumerationen skapar en kopia av meddelandet som får kommenteras på olika sätt för varje matchande regel för varje matchande regelvillkor.For each matching rule condition, the subscription produces a copy of the message, which may be differently annotated for each matching rule.

Automatisk borttagning vid inaktivitetAuto-delete on idle

Med automatisk borttagning vid inaktivitet kan du ange ett intervall för inaktivitet varefter kön tas bort automatiskt.Auto-delete on idle enables you to specify an idle interval after which the queue is automatically deleted. Minimilängden är 5 minuter.The minimum duration is 5 minutes.

DubblettidentifieringDuplicate detection

Om ett fel som leder till att klienten är osäker på resultatet av en sändningsåtgärd kan dubblettidentifiering eliminera osäkerheten genom att låta avsändaren skicka om samma meddelande. Kön eller ämnet tar bort eventuella dubbletter.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 och hanterade identiteter för Azure-resurserSAS, RBAC, and Managed identities for Azure resources

Service Bus stöder säkerhetsprotokoll som signaturer för delad åtkomst (SAS), rollbaserad åtkomstkontroll (RBAC) och hanterade identiteter för Azure-resurser.Service Bus supports security protocols such as Shared Access Signatures (SAS), Role Based Access Control (RBAC) and Managed identities for Azure resources.

GeohaveriberedskapGeo-disaster recovery

När Azure-regioner eller datacenter drabbas av driftstopp låter geohaveriberedskap databearbetningen fortsätta i en annan region eller datacenter.When Azure regions or datacenters experience downtime, Geo-disaster recovery enables data processing to continue operating in a different region or datacenter.

SäkerhetSecurity

Service Bus stöder standardprotokoll AMQP 1.0 och HTTP-REST.Service Bus supports standard AMQP 1.0 and HTTP/REST protocols.

KlientbibliotekClient libraries

Service Bus stöder klientbibliotek för .NET, Java, JMS.Service Bus supports client libraries for .NET, Java, JMS.

IntegreringIntegration

Service Bus är helt integrerad med följande Azure-tjänster:Service Bus fully integrates with the following Azure services:

Nästa stegNext steps

Om du vill komma igång med Service Bus-meddelanden, kan du läsa följande artiklar:To get started using Service Bus messaging, see the following articles: