Warstwy Premium i Standardowa komunikatów usługi Service Bus

Komunikaty usługi Service Bus, w tym jednostki, takie jak kolejki i tematy, stanowią połączenie możliwości obsługi komunikatów dla przedsiębiorstw oraz zaawansowanej semantyki publikowania/subskrybowania w skali chmury. Obsługa komunikatów usługi Service Bus pełni rolę szkieletu komunikacyjnego dla wielu zaawansowanych rozwiązań w chmurze.

Warstwa Premium komunikatów usługi Service Bus stanowi odpowiedź na częste żądania klientów dotyczące skali, wydajności i dostępności dla aplikacji o krytycznym znaczeniu. Warstwa Premium jest zalecana do użytku 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ń.

W poniższej tabeli wyróżniono pewne ogólne różnice.

Premium Standardowy
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. Aby uzyskać więcej informacji, zobacz Obsługa dużych komunikatów. Rozmiar komunikatu do 256 KB

Warstwa Premium komunikatów usługi Service Bus zapewnia izolację zasobów na poziomie procesora CPU i pamięci, dlatego obciążenia poszczególnych klientów są od siebie odizolowane. Ten kontener zasobów jest nazywany jednostką obsługi komunikatów. Każda przestrzeń nazw w warstwie Premium ma przydzieloną co najmniej jedną jednostkę obsługi komunikatów. Możesz kupić 1, 2, 4, 8 lub 16 jednostek obsługi komunikatów dla każdej przestrzeni nazw usługi Service Bus Premium. Pojedyncze obciążenie lub jednostka może obejmować wiele jednostek obsługi komunikatów, a liczba jednostek obsługi komunikatów może zostać zmieniona w tej chwili. Pozwala to uzyskać przewidywalną i powtarzalną wydajność dla rozwiązania opartego na usłudze Service Bus.

Nie tylko ta wydajność jest bardziej przewidywalna i dostępna, ale także szybsza. Dzięki komunikatom w warstwie Premium maksymalna szybkość działania jest znacznie wyższa niż w przypadku warstwy Standardowa.

Różnice techniczne dotyczące komunikatów w warstwie Premium

W poniższych sekcjach omówiono niektóre różnice między komunikatami w warstwie Premium i Standardowa.

Jednostki ekspresowe

Ponieważ komunikaty w warstwie Premium są uruchamiane w izolowanym środowisku czasu wykonywania, jednostki ekspresowe nie są obsługiwane w przestrzeniach nazw Premium. Jednostka ekspresowa tymczasowo przechowuje komunikat w pamięci przed zapisaniem go w magazynie trwałym. Jeśli masz kod działający w obszarze Obsługa komunikatów w warstwie Standardowa i chcesz przełączyć go do warstwy Premium, upewnij się, że funkcja jednostki ekspresowej jest wyłączona.

Użycie zasobów komunikatów w warstwie Premium

Ogólnie rzecz biorąc, każda operacja w jednostce może spowodować użycie procesora CPU i pamięci. Oto niektóre z tych operacji:

  • Operacje zarządzania, takie jak OPERACJE CRUD (tworzenie, pobieranie, aktualizowanie i usuwanie) w kolejkach, tematach i subskrypcjach.
  • Operacje środowiska uruchomieniowego (wysyłanie i odbieranie komunikatów)
  • Monitorowanie operacji i alertów

Dodatkowe użycie procesora CPU i pamięci nie jest jednak dodatkowo wyceniane. W przypadku warstwy Obsługa komunikatów w warstwie Premium jest dostępna pojedyncza cena dla jednostki komunikatów.

Użycie procesora CPU i pamięci jest śledzone i wyświetlane z następujących powodów:

  • Zapewnienie przezroczystości wewnętrznych systemów
  • Omówienie pojemności zakupionych zasobów.
  • Planowanie pojemności, które ułatwia podjęcie decyzji o skalowaniu w górę/w dół.

Ile jednostek obsługi komunikatów jest potrzebnych?

Podczas aprowizacji przestrzeni nazw usługi Azure Service Bus Premium należy określić liczbę jednostek obsługi komunikatów. Te jednostki obsługi komunikatów to dedykowane zasoby przydzielone do przestrzeni nazw. Po włączeniu partycjonowania w przestrzeni nazw jednostki obsługi komunikatów są równomiernie rozłożone na partycje.

Liczba jednostek obsługi komunikatów przydzielonych do przestrzeni nazw usługi Service Bus Premium może być dynamicznie dostosowywana do współczynnika zmian (zwiększenia lub zmniejszenia) obciążeń.

Podczas podejmowania decyzji o liczbie jednostek obsługi komunikatów dla architektury należy wziąć pod uwagę kilka czynników:

  • Zacznij od 1 lub 2 jednostek obsługi komunikatów przydzielonych do przestrzeni nazw lub 1 jednostki komunikatów na partycję.
  • Zapoznaj się z metrykami użycia procesora CPU w ramach metryk użycia zasobów dla przestrzeni nazw.
    • Jeśli użycie procesora CPU jest poniżej 20%, możesz skalować w dół liczbę jednostek obsługi komunikatów przydzielonych do przestrzeni nazw.
    • Jeśli użycie procesora CPU przekracza 70%, aplikacja korzysta ze skalowania w górę liczby jednostek obsługi komunikatów przydzielonych do przestrzeni nazw.

Aby dowiedzieć się, jak skonfigurować przestrzeń nazw usługi Service Bus do automatycznego skalowania (zwiększanie lub zmniejszanie liczby jednostek obsługi komunikatów), zobacz Automatyczne aktualizowanie jednostek obsługi komunikatów.

Uwaga

Skalowanie zasobów przydzielonych do przestrzeni nazw może być wstępne lub reaktywne.

  • Preemptive: Jeśli oczekuje się dodatkowego obciążenia (ze względu na sezonowość lub trendy), możesz przydzielić więcej jednostek obsługi komunikatów do przestrzeni nazw przed trafieniem obciążeń.

  • Reaktywne: jeśli dodatkowe obciążenia są identyfikowane przez zbadanie metryk użycia zasobów, dodatkowe zasoby można przydzielić do przestrzeni nazw, aby uwzględnić rosnące zapotrzebowanie.

Mierniki rozliczeniowe usługi Service Bus są godzinowe. W przypadku skalowania w górę płacisz tylko za dodatkowe zasoby za godziny, które zostały użyte.

Wprowadzenie do obsługi komunikatów Premium

Rozpoczęcie pracy z obsługą komunikatów Premium jest proste, a proces jest podobny, jak w przypadku standardowej obsługi komunikatów. Rozpocznij od utworzenia przestrzeni nazw w witrynie Azure Portal. W obszarze Warstwa cenowa wybierz pozycję Premium. Wybierz pozycję Wyświetl pełne szczegóły cennika, aby wyświetlić więcej informacji o każdej warstwie.

Screenshot that shows the selection of premium tier when creating a namespace.

Możesz również tworzyć przestrzenie nazw Premium za pomocą szablonów usługi Azure Resource Manager.

Obsługa dużych komunikatów

Przestrzenie nazw w warstwie Premium usługi Azure Service Bus obsługują możliwość wysyłania dużych ładunków komunikatów o rozmiarze do 100 MB. Ta funkcja jest przeznaczona głównie dla starszych obciążeń, które używały większych ładunków komunikatów w innych brokerach obsługi komunikatów przedsiębiorstwa i chcą bezproblemowo przeprowadzić migrację do usługi Azure Service Bus.

Poniżej przedstawiono niektóre zagadnienia dotyczące wysyłania dużych komunikatów w usłudze Azure Service Bus —

  • Obsługiwane tylko w przestrzeniach nazw warstwy Premium usługi Azure Service Bus.
  • Obsługiwane tylko w przypadku korzystania z protokołu AMQP. Nieobsługiwane w przypadku korzystania z protokołów SBMP lub HTTP w warstwie Premium maksymalny rozmiar komunikatów dla tych protokołów to 1 MB.
  • Obsługiwane w przypadku korzystania z zestawu SDK klienta usługi Java Message Service (JMS) 2.0 i innych zestawów SDK klienta języka.
  • Wysyłanie dużych komunikatów powoduje zmniejszenie przepływności i zwiększone opóźnienie.
  • Chociaż obsługiwane są ładunki komunikatów o rozmiarze 100 MB, zaleca się zachowanie możliwie najmniejszych ładunków komunikatów w celu zapewnienia niezawodnej wydajności z przestrzeni nazw usługi Service Bus.
  • Maksymalny rozmiar komunikatu jest wymuszany tylko dla komunikatów wysyłanych do kolejki lub tematu. Limit rozmiaru nie jest wymuszany dla operacji odbierania. Umożliwia aktualizowanie maksymalnego rozmiaru komunikatu dla danej kolejki (lub tematu).
  • Przetwarzanie wsadowe nie jest obsługiwane.
  • Eksplorator usługi Service Bus nie obsługuje wysyłania ani odbierania dużych komunikatów.

30 września 2026 r. wycofamy obsługę protokołu SBMP dla usługi Azure Service Bus, więc nie będzie można już używać tego protokołu po 30 września 2026 r. Przeprowadź migrację do najnowszych bibliotek zestawu SDK usługi Azure Service Bus przy użyciu protokołu AMQP, który oferuje krytyczne aktualizacje zabezpieczeń i ulepszone możliwości przed tą datą.

Aby uzyskać więcej informacji, zobacz ogłoszenie o wycofaniu pomocy technicznej.

Włączanie obsługi dużych komunikatów dla nowej kolejki (lub tematu)

Aby włączyć obsługę dużych komunikatów, ustaw maksymalny rozmiar komunikatu podczas tworzenia nowej kolejki (lub tematu), jak pokazano na poniższej ilustracji:

Screenshot that shows how to enable large message support for an existing queue.

Włączanie obsługi dużych komunikatów dla istniejącej kolejki (lub tematu)

Możesz również włączyć obsługę dużych komunikatów dla istniejących kolejek (lub tematów), aktualizując maksymalny rozmiar komunikatu w przeglądzie dla tej konkretnej kolejki (lub tematu), jak pokazano na poniższej ilustracji.

Screenshot of the Create queue page with large message support enabled.

Bezpieczeństwo sieci

Następujące funkcje zabezpieczeń sieci są dostępne tylko w warstwie Premium. Aby uzyskać szczegółowe informacje, zobacz Zabezpieczenia sieci.

Konfigurowanie zapory adresów IP przy użyciu witryny Azure Portal jest dostępne tylko dla przestrzeni nazw warstwy Premium. Można jednak skonfigurować reguły zapory adresów IP dla innych warstw przy użyciu szablonów usługi Azure Resource Manager, interfejsu wiersza polecenia, programu PowerShell lub interfejsu API REST. Aby uzyskać więcej informacji, zobacz Konfigurowanie zapory ip.

Szyfrowanie danych w stanie spoczynku

Usługa Azure Service Bus Premium zapewnia szyfrowanie danych magazynowanych przy użyciu usługi Azure Storage Service Encryption (Azure SSE). Usługa Service Bus Premium używa usługi Azure Storage do przechowywania danych. Wszystkie dane przechowywane w usłudze Azure Storage są szyfrowane przy użyciu kluczy zarządzanych przez firmę Microsoft. Jeśli używasz własnego klucza (określanego również jako Bring Your Own Key (BYOK) lub klucza zarządzanego przez klienta, dane są nadal szyfrowane przy użyciu klucza zarządzanego przez firmę Microsoft, ale dodatkowo klucz zarządzany przez firmę Microsoft jest szyfrowany przy użyciu klucza zarządzanego przez klienta. Ta funkcja umożliwia tworzenie, obracanie, wyłączanie i odwoływanie dostępu do kluczy zarządzanych przez klienta, które są używane do szyfrowania kluczy zarządzanych przez firmę Microsoft. Włączenie funkcji BYOK jest jednorazowym procesem konfiguracji w przestrzeni nazw. Aby uzyskać więcej informacji, zobacz Szyfrowanie danych usługi Azure Service Bus magazynowanych.

Partycjonowanie

Istnieją pewne różnice między warstwami Standardowa i Premium, jeśli chodzi o partycjonowanie.

  • Partycjonowanie jest dostępne podczas tworzenia jednostek dla wszystkich kolejek i tematów w jednostkach SKU podstawowych lub standardowych. Przestrzeń nazw może mieć jednostki partycjonowane i nieudzielone. Partycjonowanie jest dostępne podczas tworzenia przestrzeni nazw dla warstwy Premium, a wszystkie kolejki i tematy w tej przestrzeni nazw zostaną podzielone na partycje. Wszystkie wcześniej zmigrowane jednostki podzielone na partycje w przestrzeniach nazw w warstwie Premium nadal działają zgodnie z oczekiwaniami.
  • Po włączeniu partycjonowania w jednostkach SKU w warstwie Podstawowa lub Standardowa usługa Service Bus tworzy 16 partycji. Gdy partycjonowanie jest włączone w warstwie Premium, podczas tworzenia przestrzeni nazw jest określana liczba partycji.

Aby uzyskać więcej informacji, zobacz Partycjonowanie w usłudze Service Bus.

Awaria geograficzna i odzyskiwanie

Usługa Azure Service Bus rozprzestrzenia ryzyko katastroficznych awarii poszczególnych maszyn, a nawet kompletnych stojaków w klastrach obejmujących wiele domen awarii w centrum danych i implementuje przezroczyste mechanizmy wykrywania błędów i trybu failover, tak aby usługa nadal działała w ramach zapewnianych poziomów usług i zwykle bez zauważalnych przerw w działaniu w przypadku wystąpienia takich awarii. Przestrzeń nazw w warstwie Premium może mieć co najmniej dwie jednostki obsługi komunikatów, a te jednostki obsługi komunikatów są rozmieszczone w wielu domenach awarii w centrum danych, obsługując model klastra usługi Service Bus wszystkich aktywnych.

W przypadku przestrzeni nazw warstwy Premium ryzyko awarii jest dodatkowo rozłożone na trzy fizycznie oddzielone strefy dostępności obiektów, a usługa ma wystarczającą ilość rezerw pojemności, aby natychmiast poradzić sobie z pełną, katastrofalną utratą centrum danych. Cały aktywny model klastra usługi Azure Service Bus w domenie awarii wraz z obsługą strefy dostępności jest lepszy od dowolnego lokalnego produktu brokera komunikatów pod względem odporności na poważne awarie sprzętowe, a nawet katastrofalną utratę całych obiektów centrum danych. Mimo to, mogą istnieć poważne sytuacje z powszechnym zniszczeniem fizycznym, że nawet te środki nie mogą wystarczająco bronić przed.

Funkcja odzyskiwania po awarii geograficznej usługi Service Bus została zaprojektowana w celu ułatwienia odzyskiwania po awarii tej wielkości i porzucenia nieudanego regionu świadczenia usługi Azure na dobre i bez konieczności zmiany konfiguracji aplikacji. Porzucenie regionu platformy Azure zwykle obejmuje kilka usług, a ta funkcja ma na celu przede wszystkim ułatwienie zachowania integralności konfiguracji aplikacji złożonej. Funkcja jest dostępna globalnie dla warstwy Premium usługi Service Bus.

Aby uzyskać więcej informacji, zobacz Geo-disaster recovery usługi Azure Service Bus.

Obsługa usługi Java Message Service (JMS)

Warstwa Premium obsługuje JMS 1.1 i JMS 2.0. Aby uzyskać więcej informacji, zobacz How to use JMS 2.0 with Azure Service Bus Premium (Jak używać programu JMS 2.0 w usłudze Azure Service Bus Premium).

Warstwa Standardowa obsługuje tylko podzestaw JMS 1.1 skoncentrowany na kolejkach. Aby uzyskać więcej informacji, zobacz Używanie usługi Java Message Service 1.1 ze standardem usługi Azure Service Bus.

Następne kroki

Aby dowiedzieć się więcej na temat obsługi komunikatów usługi Service Bus, zobacz poniższe linki: