Azure Service Bus nedir?What is Azure Service Bus?

Microsoft Azure Service Bus, tam olarak yönetilen bir kurumsal tümleştirme ileti aracısıdır.Microsoft Azure Service Bus is a fully managed enterprise integration message broker. Service Bus, en sık olarak uygulamaları ve hizmetleri birbirinden ayırmak için kullanılır ve zaman uyumsuz veri ve durum aktarımı için güvenilir ve güvenli bir platformdur.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. Veriler, farklı uygulamalar ve hizmetler arasında iletiler kullanılarak aktarılır.Data is transferred between different applications and services using messages. Bir ileti ikili biçimindedir, bu da JSON, XML veya yalnızca metin içerebilir.A message is in binary format, which can contain JSON, XML, or just text.

Yaygın olarak kullanılan bazı mesajlaşma senaryoları:Some common messaging scenarios are:

  • Mesajlaşma: satış veya sipariş emirleri, günlük ya da envanter hareketleri gibi iş verileri aktarma.Messaging: transfer business data, such as sales or purchase orders, journals, or inventory movements.
  • Uygulamaları ayırma: uygulama ve hizmetlerin güvenilirliğini ve ölçeklenebilirliğini artırma (istemci ve hizmetin aynı anda çevrimiçi olması gerekmez).Decouple applications: improve reliability and scalability of applications and services (client and service do not have to be online at the same time).
  • Konu başlıkları ve abonelikler: yayımcılar ve aboneler arasında 1:n ilişkileri etkinleştirme.Topics and subscriptions: enable 1:n relationships between publishers and subscribers.
  • İleti oturumları: ileti sıralama veya ileti erteleme gerektiren iş akışlarını uygulama.Message sessions: implement workflows that require message ordering or message deferral.

Ad AlanlarıNamespaces

Ad alanı, tüm mesajlaşma bileşenlerini kapsayan bir kapsayıcıdır.A namespace is a scoping container for all messaging components. Tek bir ad alanında birden fazla kuyruk ve konu bulunabilir ve ad alanları genellikle uygulama kapsayıcıları olarak görev yapar.Multiple queues and topics can reside within a single namespace, and namespaces often serve as application containers.

SıralarQueues

İletiler kuyruklara gönderilir ve bunlardan alınır.Messages are sent to and received from queues. Kuyruklar, alacak uygulama almaya ve işlemeye uygun olana kadar iletileri depolamanızı sağlar.Queues enable you to store messages until the receiving application is available to receive and process them.

Kuyruk

Kuyruklarda bulunan iletiler, varış noktasında sıralanır ve zaman damgalanır.Messages in queues are ordered and timestamped on arrival. Kabul edildikten sonra ileti yedekli depolama alanında güvenli bir şekilde tutulur.Once accepted, the message is held safely in redundant storage. İletiler istek üzerine iletiler teslim eden çekme modunda teslim edilir.Messages are delivered in pull mode, which delivers messages on request.

KonularTopics

İleti göndermek ve almak için konu başlıklarını da kullanabilirsiniz.You can also use topics to send and receive messages. Bir kuyruk genellikle noktadan noktaya iletişim için kullanılır, buna karşın konu başlıkları yayımlama/abone olma senaryolarında yararlıdır.While a queue is often used for point-to-point communication, topics are useful in publish/subscribe scenarios.

Konu

Konuların birden fazla ve bağımsız abonesi olabilir.Topics can have multiple, independent subscriptions. Bir konu başlığının bir abonesi konu başlığına gönderilen her iletinin bir kopyasını alabilir.A subscriber to a topic can receive a copy of each message sent to that topic. Abonelikler, kalıcı olarak oluşturulan ancak istenirse süresi dolabilecek veya silinebilecek adlandırılmış varlıklardır.Subscriptions are named entities, which are durably created but can optionally expire or auto-delete.

Bazı senaryolarda bireysel aboneliklerin bir konu başlığına gönderilen tüm iletileri almasını istemeyebilirsiniz.In some scenarios, you may not want individual subscriptions to receive all messages sent to a topic. Böyle durumlarda, isteğe bağlı eylemler tetikleyen, belirli iletileri filtreleyen ve ileti özelliklerini ayarlayan veya değiştiren koşullar tanımlamak için kurallar ve filtreler kullanabilirsiniz.If so, you can use rules and filters to define conditions that trigger optional actions, filter specified messages, and set or modify message properties.

Gelişmiş özelliklerAdvanced features

Service Bus ayrıca daha karmaşık mesajlaşma sorunlarını çözmenizi sağlayan gelişmiş özelliklere de sahiptir.Service Bus also has advanced features that enable you to solve more complex messaging problems. Aşağıdaki bölümlerde bu başlıca özellikler açıklanmaktadır:The following sections describe these key features:

Mesaj oturumlarıMessage sessions

Service Bus'ta ilk giren ilk çıkar ilkesinin (FIFO) kullanılmasını garantilemek için oturumlar kullanın.To realize a first-in, first-out (FIFO) guarantee in Service Bus, use sessions. İleti oturumları, sınırsız sayıda birbiriyle ilgili iletinin birlikte ve düzenli olarak işlenmesini sağlar.Message sessions enable joint and ordered handling of unbounded sequences of related messages.

Otomatik iletmeAuto-forwarding

Otomatik iletme özelliği, bir kuyruk veya aboneliği aynı ad alanında olan başka bir kuyruk veya konu başlığına zincirleme eklemenize olanak tanır.The auto-forwarding feature enables you to chain a queue or subscription to another queue or topic that is part of the same namespace. Otomatik iletme etkinleştirildiğinde, Service Bus, ilk kuyruğa veya aboneliğe (kaynak) yerleştirilen iletileri otomatik olarak kaldırıp ikinci kuyruğa veya aboneliğe (hedef) yerleştirir.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).

Ulaşmayan postaDead-lettering

Service Bus, herhangi bir alıcıya teslim edilemeyen veya işlenemeyen iletileri tutmak için bir ulaşmayan posta kuyruğunu (DLQ) destekler.Service Bus supports a dead-letter queue (DLQ) to hold messages that cannot be delivered to any receiver, or messages that cannot be processed. İletileri daha sonra DLQ'dan kaldırabilir ve inceleyebilirsiniz.You can then remove messages from the DLQ and inspect them.

Zamanlanmış teslimScheduled delivery

Bir kuyruğa veya konu başlığına daha sonra işlenmek; örneğin belirli bir işi belirli bir zamanda sistem tarafından işlenmeye uygun hale gelmesi için zamanlamak üzere ileti gönderebilirsiniz.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.

İleti ertelemeMessage deferral

Bir kuyruk veya abonelik istemcisi işlemeye hazır olduğu ancak uygulamadaki özel koşullar nedeniyle o anda işlenmesinin mümkün olmadığı bir ileti aldığında, iletinin alınmasını (ilerideki bir zamana) erteleme seçeneğine sahiptir.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. İleti sıra veya abonelikte kalır ancak bir kenara ayrılır.The message remains in the queue or subscription, but it is set aside.

Toplu İşlemeBatching

İstemci tarafında toplu iş, bir kuyruk veya konu başlığı istemcisinin bir iletiyi göndermeyi belirli bir süre için ertelemesini sağlar.Client-side batching enables a queue or topic client to delay sending a message for a certain period of time. İstemci bu süre içinde başka iletiler gönderirse, iletileri tek bir toplu iş olarak gönderir.If the client sends additional messages during this time period, it transmits the messages in a single batch.

İşlemlerTransactions

Bir hareket, iki veya daha fazla işlemi tek bir yürütme kapsamında bir araya toplar.A transaction groups two or more operations together into an execution scope. Service Bus, bir hareketin kapsamı içindeki işlemlerin (kuyruk, konu başlığı, abonelik gibi) tek bir mesajlaşma varlığına göre gruplanmasını destekler.Service Bus supports grouping operations against a single messaging entity (queue, topic, subscription) within the scope of a transaction.

Filtreleme ve eylemlerFiltering and actions

Aboneler, bir konu başlığından hangi iletileri almak istediklerini tanımlayabilir.Subscribers can define which messages they want to receive from a topic. Bu iletiler, bir veya daha fazla adlandırılmış abonelik kuralı biçiminde belirtilir.These messages are specified in the form of one or more named subscription rules. Eşleşen her kural koşulu için abonelik, iletinin, her eşleşme kuralı için farklı şekilde açıklama eklenebilecek bir kopyasını üretir.For each matching rule condition, the subscription produces a copy of the message, which may be differently annotated for each matching rule.

Boşta beklemede otomatik silmeAuto-delete on idle

Boşta beklemede otomatik silme, bittiğinde kuyruğun otomatik olarak silindiği bir boşta bekleme süresi belirtmenizi sağlar.Auto-delete on idle enables you to specify an idle interval after which the queue is automatically deleted. En düşük süre 5 dakikadır.The minimum duration is 5 minutes.

Yineleme algılamaDuplicate detection

İstemcinin bir gönderme işleminin sonucu hakkında şüpheli olmasına neden olan bir hata oluşursa, çoğaltılan algılama , gönderenin aynı iletiyi yeniden göndermesini sağlayarak bu durumlardan yararlanır ve sıra veya konu, herhangi bir yinelemeyi iptal eder serisi.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.

Azure kaynakları için SAS, RBAC ve Yönetilen kimliklerSAS, RBAC, and Managed identities for Azure resources

Service Bus, Paylaşılan Erişim İmzaları (SAS), Rol Tabanlı Erişim Denetimi (RBAC) ve Azure kaynakları için Yönetilen kimlikler gibi güvenlik protokollerini destekler.Service Bus supports security protocols such as Shared Access Signatures (SAS), Role Based Access Control (RBAC) and Managed identities for Azure resources.

Coğrafi olağanüstü durum kurtarmaGeo-disaster recovery

Azure bölgeleri veya veri merkezleri bir kesinti yaşadığında, Coğrafi olağanüstü durum kurtarma veri işlemenin başka bir bölge veya veri merkezinde devam etmesini olanaklı kılar.When Azure regions or datacenters experience downtime, Geo-disaster recovery enables data processing to continue operating in a different region or datacenter.

GüvenlikSecurity

Service Bus, standart AMQP 1.0 ve HTTP/REST protokollerini destekler.Service Bus supports standard AMQP 1.0 and HTTP/REST protocols.

İstemci kitaplıklarıClient libraries

Service Bus, .NET, Java ve JMS istemci kitaplıklarını destekler.Service Bus supports client libraries for .NET, Java, JMS.

TümleştirmeIntegration

Service Bus, aşağıdaki Azure hizmetleriyle tam olarak tümleşiktir:Service Bus fully integrates with the following Azure services:

Sonraki adımlarNext steps

Service Bus mesajlaşmasını kullanmaya başlamak için aşağıdaki makalelere bakın:To get started using Service Bus messaging, see the following articles: