Eksplorowanie usługi Azure Service Bus
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:
- Obsługa komunikatów. 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 warstwy Podstawowa, Standardowa i Premium. Warstwa Premium komunikatów usługi Service Bus dotyczy typowych żądań klientów dotyczących skali, wydajności i dostępności aplikacji o znaczeniu krytycznym. Warstwa Premium jest zalecana w scenariuszach produkcyjnych. Mimo że zestawy funkcji są niemal identyczne, te dwie warstwy komunikatów usługi Service Bus są przeznaczone do różnych zastosowań. Aby uzyskać więcej informacji na temat dostępnych warstw, odwiedź stronę Cennik usługi Service Bus.
Niektóre różnice wysokiego poziomu między warstwami Premium i Standardowa zostały wyróżnione w poniższej tabeli.
Premium | Standardowa |
---|---|
Wysoka przepływność | Zmienna przepływność |
Przewidywalna wydajność | Zmienne opóźnienie |
Stałe ceny | Zmienne ceny i płatność zgodnie z rzeczywistym użyciem |
Możliwość skalowania obciążenia | Nie dotyczy |
Rozmiar komunikatu do 100 MB | Rozmiar komunikatu do 256 KB |
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. |
Autoforwarding | 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 razem co najmniej dwie operacje w zakresie wykonania. 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ń, np. sygnatury dostępu współdzielonego (SAS), kontrolę dostępu na podstawie ról (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.
- Usługa Azure Service Bus dla platformy .NET
- Biblioteki usługi Azure Service Bus dla języka Java
- Dostawca usługi Azure Service Bus dla środowiska Java JMS 2.0
- Moduły usługi Azure Service Bus dla języków JavaScript i TypeScript
- Biblioteki usługi Azure Service Bus dla języka Python