Eksplorowanie usługi Azure Service Bus

Zakończone

Usługa Azure Service Bus to w pełni zarządzany broker komunikatów przedsiębiorstwa z kolejkami komunikatów i tematami publikowania i subskrybowania. Usługa Service Bus służy do oddzielania aplikacji i usług. Dane są przesyłane między różnymi aplikacjami i usługami przy użyciu komunikatów. Komunikat jest kontenerem ozdobionym metadanymi i zawiera dane. Dane mogą być dowolnym rodzajem informacji, w tym danymi ustrukturyzowanymi zakodowanymi w typowych formatach, takimi jak następujące: JSON, XML, Apache Avro i Zwykły tekst.

Niektóre typowe scenariusze obsługi komunikatów:

  • Wiadomości. Transfer danych biznesowych, takich jak sprzedaż lub zamówienia zakupu, dzienniki lub ruchy zapasów.
  • Rozdziel aplikacje. Zwiększanie niezawodności i skalowalności aplikacji i usług. Klient i usługa nie muszą być w trybie online w tym samym czasie.
  • Tematy i subskrypcje. Włącz relacje 1:n między wydawcami i subskrybentami.
  • Sesje komunikatów. Zaimplementuj przepływy pracy wymagające porządkowania komunikatów lub odroczenia komunikatów.

Warstwy usługi Service Bus

Usługa Service Bus oferuje trzy warstwy cenowe: Podstawowa, Standardowa i Premium. Każda warstwa jest przeznaczona do obsługi różnych przypadków użycia i wymagań.

  • Warstwa Podstawowa — odpowiednia dla prostych scenariuszy obsługi komunikatów z małą przepływnością i minimalnymi wymaganiami dotyczącymi funkcji. Warstwa podstawowa obsługuje tylko kolejki (nie tematy i subskrypcje).

  • Warstwa Standardowa — zalecana w przypadku środowisk deweloperskich/testowych lub scenariuszy o niskiej przepływności, w których aplikacje nie są wrażliwe na ograniczanie przepustowości. Obsługuje zarówno kolejki, jak i tematy z subskrypcjami.

  • Warstwa Premium — zalecana w przypadku scenariuszy produkcyjnych wymagających przewidywalnego opóźnienia i wysokiej przepływności. Oferuje izolację zasobów na poziomie procesora CPU i pamięci oraz zaawansowane funkcje dla aplikacji o krytycznym znaczeniu.

Aby uzyskać więcej informacji na temat dostępnych warstw, odwiedź stronę Cennik usługi Service Bus.

Porównanie warstw

Funkcja Basic Standard Premium
Throughput Low Variable High
Performance Nie dotyczy Zmienne opóźnienie Przewidywalna wydajność
Pricing Płać za rzeczywiste użycie Zmienne ceny i płatność zgodnie z rzeczywistym użyciem Stałe ceny za jednostkę wiadomości
Scaling Nie dotyczy Nie dotyczy Możliwość skalowania obciążenia
Rozmiar komunikatu 256 KB 256 KB Do 100 MB
Tematy i subskrypcje Niewspierane Wsparte Wsparte
Transakcje Niewspierane Wsparte Wsparte
Automatyczne przekazywanie Niewspierane Wsparte Wsparte
Sesje komunikatów Wsparte Wsparte Wsparte

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 poniższej tabeli opisano kilka z tych funkcji.

Funkcja opis
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.
Automatyczne przekazywanie Funkcja autoforwarding zawiera kolejkę lub subskrypcję do innej kolejki lub tematu, który znajduje się w tej samej przestrzeni nazw.
Kolejka utraconych komunikatów Usługa Service Bus obsługuje kolejkę utraconych komunikatów (DLQ). DlQ przechowuje komunikaty, których nie można dostarczyć do żadnego odbiornika. Usługa Service Bus umożliwia usuwanie komunikatów z biblioteki DLQ i ich inspekcję.
Zaplanowane dostarczanie Komunikaty można przesyłać do kolejki lub tematu w celu opóźnionego przetwarzania. Możesz zaplanować udostępnienie zadania do przetwarzania przez system w określonym czasie.
Odraczanie komunikatów Klient kolejki lub subskrypcji może odroczyć pobieranie komunikatu do późniejszego czasu. Komunikat pozostaje w kolejce lub subskrypcji, ale jest odkładany.
Transakcje Transakcja grupuje ze sobą co najmniej dwie operacje w zakresie wykonywania. Usługa Service Bus obsługuje operacje grupowania względem pojedynczej jednostki obsługi komunikatów w zakresie pojedynczej transakcji. Jednostka komunikatu może być kolejką, tematem lub subskrypcją.
Filtrowanie i akcje Subskrybenci mogą zdefiniować, które komunikaty chcą odbierać z tematu. Komunikaty te są określone w formie co najmniej jednej nazwanej reguły subskrypcji.
Automatyczne usuwanie bezczynności Automatyczne usuwanie bezczynności umożliwia określenie interwału bezczynności, po którym kolejka zostanie automatycznie usunięta. Minimalny czas trwania wynosi 5 minut.
Wykrywanie duplikatów Błąd może spowodować, że klient będzie miał wątpliwości co do wyniku operacji wysyłania. Wykrywanie duplikatów umożliwia nadawcy ponowne wysłanie tego samego komunikatu lub w przypadku kolejki lub tematu w celu odrzucenia wszelkich duplikatów kopii.
Protokoły zabezpieczeń Usługa Service Bus obsługuje protokoły zabezpieczeń, takie jak sygnatury dostępu współdzielonego (SAS), kontrola dostępu oparta na rolach (RBAC) i tożsamości zarządzane dla zasobów platformy Azure.
Geograficzne odzyskiwanie po awarii Jeśli w regionach lub centrach danych Azure dojdzie do przestoju, geograficzne odzyskiwanie po awarii umożliwia kontynuowanie przetwarzania danych w innym regionie lub centrum danych.
Zabezpieczenia Usługa Service Bus obsługuje standardowe protokoły AMQP 1.0 i HTTP/REST.

Zgodność ze standardami i protokołami

Podstawowym protokołem przewodowym dla usługi Service Bus jest protokół Advanced Messaging Queueing Protocol (AMQP) 1.0, otwarty standard ISO/IEC. Umożliwia ona klientom pisanie aplikacji, które działają względem usługi Service Bus i lokalnych brokerów, takich jak ActiveMQ lub RabbitMQ. Przewodnik po protokole AMQP zawiera szczegółowe informacje na wypadek, gdy chcesz utworzyć taką abstrakcję.

Usługa Service Bus Premium jest w pełni zgodna z interfejsem API Java/Jakarta EE Java Message Service (JMS) 2.0 .

Biblioteki klienta

W pełni obsługiwane biblioteki klienta usługi Service Bus są dostępne za pośrednictwem zestawu Azure SDK.