Udostępnij za pośrednictwem


Azure Service Bus — funkcje zaawansowane

Usługa Service Bus zawiera zaawansowane funkcje, które umożliwiają rozwiązywanie bardziej złożonych problemów z obsługą komunikatów. W tym artykule opisano kilka z tych funkcji.

Sesje komunikatów

Aby utworzyć gwarancję fiFO (first-in, first-in, first-out) w usłudze Service Bus, użyj sesji. Sesje komunikatów umożliwiają wyłączną, uporządkowaną obsługę niezwiązanych sekwencji powiązanych komunikatów. Aby umożliwić obsługę sesji w systemach wysokiej dostępności na dużą skalę, funkcja sesji umożliwia również przechowywanie stanu sesji, co umożliwia bezpieczne przenoszenie sesji między procedurami obsługi. Aby uzyskać więcej informacji, zobacz Sesje komunikatów: first in, first out (FIFO).

Autoforwarding

Funkcja autoforwarding zawiera kolejkę lub subskrypcję do innej kolejki lub tematu w tej samej przestrzeni nazw. W przypadku korzystania z tej funkcji usługa Service Bus automatycznie przenosi komunikaty z kolejki lub subskrypcji do kolejki docelowej lub tematu. Wszystkie takie ruchy są wykonywane transakcyjnie. Aby uzyskać więcej informacji, zobacz Łączenie jednostek usługi Service Bus z autoforwardingiem.

Kolejka utraconych komunikatów

Wszystkie kolejki i subskrypcje tematów usługi Service Bus mają skojarzone kolejki utraconych komunikatów (DLQ). DlQ przechowuje komunikaty spełniające następujące kryteria:

  • Nie można ich pomyślnie dostarczyć do żadnego odbiornika.
  • Upłynął limit czasu.
  • Są one jawnie odsuwane przez aplikację odbieraną.

Komunikaty w kolejce utraconych komunikatów są oznaczone adnotacjami z powodem, dla którego zostały tam umieszczone. Kolejka utraconych komunikatów ma specjalny punkt końcowy, ale w przeciwnym razie działa jak każda zwykła kolejka. Aplikacja lub narzędzie może przeglądać bibliotekę DLQ lub dequeue z niej. Możesz również automatycznie wycofać się z kolejki utraconych komunikatów. Aby uzyskać więcej informacji, zobacz Omówienie kolejek utraconych komunikatów usługi Service Bus.

Zaplanowane dostarczanie

Komunikaty można przesyłać do kolejki lub tematu na potrzeby przetwarzania opóźnionego, ustawiając czas, w którym komunikat stanie się dostępny do użycia. Zaplanowane komunikaty można również anulować. Aby uzyskać więcej informacji, zobacz Zaplanowane komunikaty.

Odraczanie komunikatów

Klient kolejki lub subskrypcji może odroczyć pobieranie odebranego komunikatu do późniejszego czasu. Wiadomość mogła zostać wysłana z oczekiwanej kolejności i klient chce poczekać, aż otrzyma kolejny komunikat. Komunikaty odroczone pozostają w kolejce lub subskrypcji i muszą zostać jawnie aktywowane przy użyciu przypisanego przez usługę numeru sekwencji. Aby uzyskać więcej informacji, zobacz Odroczenie komunikatów.

Transakcje

Transakcja grupuje razem co najmniej dwie operacje w zakresie wykonania. Usługa Service Bus umożliwia grupowanie operacji na wielu jednostkach obsługi komunikatów w zakresie jednej transakcji. Jednostka komunikatu może być kolejką, tematem lub subskrypcją. Aby uzyskać więcej informacji, zobacz Omówienie przetwarzania transakcji usługi Service Bus.

Automatyczne usuwanie bezczynności

Automatyczne usuwanie bezczynności umożliwia określenie interwału bezczynności, po którym subskrypcja kolejki lub tematu zostanie automatycznie usunięta. Interwał jest resetowany po dodaniu lub usunięciu komunikatu z subskrypcji. Minimalny czas trwania wynosi 5 minut. Aby zapoznać się z omówieniem tego, co jest uważane za bezczynność jednostek, zobacz Bezczynność.

Wykrywanie duplikatów

Funkcja wykrywania duplikatów umożliwia nadawcy ponowne wysłanie tego samego komunikatu i usunięcie potencjalnego duplikatu przez brokera. Aby uzyskać więcej informacji, zobacz Wykrywanie duplikatów.

Usuwanie wsadowe komunikatów

Usługa Azure Service Bus obsługuje usuwanie komunikatów w partiach. Jest to przydatne w scenariuszach, gdy komunikaty w kolejkach lub subskrypcjach wygasły lub nie są już istotne, co wymaga czyszczenia. Aby uzyskać więcej informacji, zobacz Usuwanie usługi Batch.

Obsługa zamawiania

Funkcja zamawiania pomocy technicznej umożliwia określenie, czy komunikaty wysyłane do tematu są przekazywane do subskrypcji w tej samej kolejności, w jakiej zostały wysłane. Ta funkcja nie obsługuje tematów podzielonych na partycje. Aby uzyskać więcej informacji, zobacz TopicProperties.SupportOrdering na platformie .NET lub TopicProperties.setOrderingSupported w języku Java.

Geograficzne odzyskiwanie po awarii

Gdy w regionie świadczenia usługi Azure wystąpi przestój, funkcja odzyskiwania po awarii umożliwia kontynuowanie przetwarzania komunikatów w innym regionie lub centrum danych. Funkcja utrzymuje strukturalne dublowanie przestrzeni nazw dostępnej w regionie pomocniczym i umożliwia tożsamości przestrzeni nazw przełączenie się do pomocniczej przestrzeni nazw. Już opublikowane komunikaty pozostają w dawnej podstawowej przestrzeni nazw na potrzeby odzyskiwania po ustąpieniu odcinka dostępności. Aby uzyskać więcej informacji, zobacz Geo-disaster recovery usługi Azure Service Bus. Ta funkcja replikuje tylko metadane (jednostki, konfiguracja, właściwości) jednostek usługi Service Bus, a nie dane w nich.

Replikacja geograficzna

Funkcja replikacji geograficznej usługi Service Bus jest jedną z opcji izolacji aplikacji usługi Azure Service Bus przed awariami i awariami, zapewniając replikację obu metadanych (jednostek, konfiguracji, właściwości) i danych (dane komunikatu i właściwość komunikatu / zmiany stanu).

Zabezpieczenia

Usługa Service Bus obsługuje standardowe protokoły Advanced Message Queuing Protocol (AMQP) 1.0 i HTTP lub REST oraz odpowiednie obiekty zabezpieczeń, w tym zabezpieczenia na poziomie transportu (TLS). Klienci mogą być autoryzowani do uzyskiwania dostępu przy użyciu sygnatury dostępu współdzielonego lub zabezpieczeń opartych na rolach identyfikatora Firmy Microsoft.

W celu ochrony przed niepożądanym ruchem usługa Service Bus udostępnia funkcje zabezpieczeń, takie jak zapora IP i integracja z sieciami wirtualnymi.

Zobacz przykłady obsługi komunikatów usługi Service Bus, które pokazują, jak używać tych funkcji usługi Service Bus.