Usługa Event Hubs — często zadawane pytania

Ogólne

Co to jest przestrzeń nazw usługi Azure Event Hubs?

Przestrzeń nazw to kontener określania zakresu dla centrów zdarzeń lub tematów platformy Kafka. Zapewnia unikatową nazwę FQDN. Przestrzeń nazw służy jako kontener aplikacji, który może zawierać wiele centrów zdarzeń lub tematów platformy Kafka.

Czy można zmienić warstwę cenową po wdrożeniu?

L.p. Po wdrożeniu nie można zmienić (na przykład) z warstwy Standardowa na warstwę Premium bez wdrażania nowego zasobu.

Kiedy utworzyć nową przestrzeń nazw i użyć istniejącej przestrzeni nazw?

Alokacje pojemności jednostek przepływności (TU) lub jednostek przetwarzania (PU) są rozliczane na poziomie przestrzeni nazw. Przestrzeń nazw jest również skojarzona z regionem.

Możesz utworzyć nową przestrzeń nazw zamiast używać istniejącej w jednym z następujących scenariuszy:

  • Potrzebujesz centrum zdarzeń skojarzonego z nowym regionem.
  • Potrzebujesz centrum zdarzeń skojarzonego z inną subskrypcją.
  • Potrzebujesz centrum zdarzeń z odrębną alokacją pojemności (oznacza to, że potrzeba pojemności dla przestrzeni nazw z dodanym centrum zdarzeń przekroczy próg 40 tu i nie chcesz przechodzić do dedykowanego klastra)."

Jaka jest różnica między warstwami podstawową i Standardowa usługi Event Hubs?

Warstwa Standardowa usługi Azure Event Hubs udostępnia funkcje wykraczające poza to, co jest dostępne w warstwie Podstawowa. Dostępne są następujące funkcje w warstwie Standardowa:

Aby uzyskać więcej informacji na temat warstw cenowych, w tym usługi Event Hubs Dedicated, zobacz szczegóły cennika usługi Event Hubs.

Gdzie jest dostępna usługa Azure Event Hubs?

Usługa Azure Event Hubs jest dostępna we wszystkich obsługiwanych regionach świadczenia usługi Azure. Aby zapoznać się z listą, odwiedź stronę Regionów świadczenia usługi Azure.

Czy mogę użyć jednego połączenia protokołu Queuing Protocol (AMQP) zaawansowanego do wysyłania i odbierania z wielu centrów zdarzeń?

Tak, o ile wszystkie centra zdarzeń znajdują się w tej samej przestrzeni nazw.

Jaki jest maksymalny okres przechowywania zdarzeń?

Warstwa Standardowa usługi Event Hubs obsługuje obecnie maksymalny okres przechowywania wynoszący siedem dni, natomiast w przypadku warstwy Premium i dedykowanej ten limit wynosi 90 dni. Centra zdarzeń nie są przeznaczone jako trwały magazyn danych. Okresy przechowywania większe niż 24 godziny są przeznaczone dla scenariuszy, w których wygodne jest odtwarzanie strumienia zdarzeń w tych samych systemach. Aby na przykład wytrenować lub zweryfikować nowy model uczenia maszynowego na istniejących danych. Jeśli potrzebujesz przechowywania komunikatów powyżej siedmiu dni, włączenie funkcji przechwytywania usługi Event Hubs w centrum zdarzeń powoduje ściąganie danych z centrum zdarzeń do wybranego konta usługi Storage lub konta usługi Azure Data Lake Service. Włączenie funkcji Przechwytywanie powoduje naliczanie opłat na podstawie zakupionych jednostek przepływności.

Okres przechowywania przechwyconych danych na koncie magazynu można skonfigurować. Funkcja zarządzania cyklem życia usługi Azure Storage oferuje zaawansowane zasady oparte na regułach dla kont ogólnego przeznaczenia w wersji 2 i magazynu obiektów blob. Użyj zasad, aby przenieść dane do odpowiednich warstw dostępu lub wygasnąć po zakończeniu cyklu życia danych. Aby uzyskać więcej informacji, zobacz Zarządzanie cyklem życia usługi Azure Blob Storage.

Jak mogę monitorować moje centra zdarzeń?

Usługa Event Hubs emituje wyczerpujące metryki, które zapewniają stan zasobów w usłudze Azure Monitor. Umożliwiają one również ocenę ogólnej kondycji usługi Event Hubs nie tylko na poziomie przestrzeni nazw, ale także na poziomie jednostki. Dowiedz się więcej o tym, jakie monitorowanie jest oferowane dla usługi Azure Event Hubs.

Gdzie usługa Azure Event Hubs przechowuje dane?

Usługa Azure Event Hubs w warstwie Standardowa, Premium i dedykowana przechowuje i przetwarza dane publikowane w regionie wybranym podczas tworzenia przestrzeni nazw usługi Event Hubs. Domyślnie dane klientów pozostają w tym regionie. Po skonfigurowaniu odzyskiwania po awarii geograficznej dla przestrzeni nazw usługi Azure Event Hubs metadane są kopiowane do wybranego regionu pomocniczego. W związku z tym ta usługa automatycznie spełnia wymagania dotyczące przechowywania danych w regionie, w tym te określone w Centrum zaufania.

Jakich protokołów mogę używać do wysyłania i odbierania zdarzeń?

Producenci lub nadawcy mogą wysyłać zdarzenia do centrum zdarzeń przy użyciu protokołu Advanced Messaging Queuing Protocol (AMQP), Kafka lub HTTPS.

Odbiorcy lub odbiorcy używają protokołu AMQP lub platformy Kafka do odbierania zdarzeń z centrum zdarzeń. Usługa Event Hubs obsługuje tylko model ściągania, który umożliwia konsumentom odbieranie z niego zdarzeń. Nawet w przypadku używania programów obsługi zdarzeń do obsługi zdarzeń z centrum zdarzeń procesor zdarzeń wewnętrznie używa modelu ściągania do odbierania zdarzeń z centrum zdarzeń.

AMQP

Protokół AMQP 1.0 umożliwia wysyłanie zdarzeń do usługi Azure Event Hubs i odbieranie zdarzeń. Protokół AMQP zapewnia niezawodną, wydajną i bezpieczną komunikację zarówno do wysyłania, jak i odbierania zdarzeń. Można go używać do przesyłania strumieniowego o wysokiej wydajności i czasie rzeczywistym i jest obsługiwany przez większość zestawów SDK usługi Azure Event Hubs.

HTTPS/REST API

Zdarzenia można wysyłać tylko do usługi Event Hubs przy użyciu żądań HTTP POST. Usługa Event Hubs nie obsługuje odbierania zdarzeń za pośrednictwem protokołu HTTPS. Jest odpowiedni dla lekkich klientów, gdzie bezpośrednie połączenie TCP nie jest możliwe.

Apache Kafka

Usługa Azure Event Hubs ma wbudowany punkt końcowy platformy Kafka, który obsługuje producentów i konsumentów platformy Kafka. Aplikacje utworzone przy użyciu platformy Kafka mogą używać protokołu Kafka (w wersji 1.0 lub nowszej) do wysyłania i odbierania zdarzeń z usługi Event Hubs bez żadnych zmian w kodzie.

Zestawy SDK platformy Azure tworzą abstrakcję podstawowych protokołów komunikacyjnych i zapewniają uproszczony sposób wysyłania i odbierania zdarzeń z usługi Event Hubs przy użyciu języków takich jak C#, Java, Python, JavaScript itp.

Jakie porty należy otworzyć w zaporze?

Do wysyłania i odbierania zdarzeń można użyć następujących protokołów w usłudze Azure Event Hubs:

  • Advanced Message Queuing Protocol 1.0 (AMQP)
  • Protokół hypertext Transfer Protocol 1.1 z protokołem Transport Layer Security (HTTPS)
  • Apache Kafka

Poniższa tabela zawiera porty wychodzące, które należy otworzyć, aby używać tych protokołów do komunikowania się z usługą Azure Event Hubs.

Protokół Porty Szczegóły
AMQP 5671 i 5672 Zobacz Przewodnik po protokole AMQP
HTTPS 443 Ten port jest używany dla interfejsu API HTTP/REST i dla obiektów AMQP-over-WebSocket.
Kafka 9093 Zobacz Używanie usługi Event Hubs z aplikacji platformy Kafka

Port HTTPS jest wymagany do komunikacji wychodzącej również wtedy, gdy protokół AMQP jest używany przez port 5671, ponieważ kilka operacji zarządzania wykonywanych przez zestawy SDK klienta i uzyskiwanie tokenów z identyfikatora Entra firmy Microsoft (jeśli jest używane) działa za pośrednictwem protokołu HTTPS.

Oficjalne zestawy SDK platformy Azure zwykle używają protokołu AMQP do wysyłania i odbierania zdarzeń z usługi Event Hubs. Opcja protokołu AMQP-over-WebSockets działa za pośrednictwem portu TCP 443, podobnie jak interfejs API HTTP, ale w przeciwnym razie jest funkcjonalnie taka sama jak zwykły protokół AMQP. Ta opcja ma większe opóźnienie początkowego połączenia z powodu dodatkowego uzgadniania rund i nieco większego obciążenia w miarę kompromisu związanego z udostępnianiem portu HTTPS. Jeśli ten tryb jest wybrany, port TCP 443 jest wystarczający do komunikacji. Następujące opcje umożliwiają wybranie zwykłego trybu protokołu AMQP lub protokołu WEBSocket protokołu AMQP:

Język Opcja
.NET EventHubConnectionOptions.TransportType z właściwością EventHubsTransportType.AmqpTcp lub EventHubsTransportType.AmqpWebSockets
Java com.microsoft.azure.eventhubs.EventProcessorClientBuilder.transporttype with AmqpTransportType.AMQP or AmqpTransportType.AMQP_WEB_SOCKETS
Węzeł Właściwość EventHubConsumerClientOptions.webSocketOptions
Python EventHubConsumerClient.transport_type z protokołem TransportType.Amqp lub TransportType.AmqpOverWebSocket

Jakie adresy IP muszę zezwolić?

Podczas pracy z platformą Azure czasami musisz zezwolić określonym zakresom adresów IP lub adresom URL w zaporze firmowej lub serwerze proxy na dostęp do wszystkich usług platformy Azure, których używasz lub których próbujesz użyć. Sprawdź, czy ruch jest dozwolony na adresach IP używanych przez usługę Event Hubs. Adresy IP używane przez usługę Azure Event Hubs: zobacz Zakresy adresów IP platformy Azure i tagi usług — chmura publiczna.

Sprawdź również, czy adres IP przestrzeni nazw jest dozwolony. Aby znaleźć odpowiednie adresy IP, aby zezwolić na połączenia, wykonaj następujące kroki:

  1. Uruchom następujące polecenie w wierszu polecenia:

    nslookup <YourNamespaceName>.servicebus.windows.net
    
  2. Zanotuj adres IP zwrócony w pliku Non-authoritative answer.

Jeśli używasz przestrzeni nazw hostowanej w starszym klastrze (w oparciu o usługi Cloud Services — CNAME kończące się na *.cloudapp.net), a przestrzeń nazw jest strefowo nadmiarowa, należy wykonać kilka dodatkowych kroków. Jeśli przestrzeń nazw znajduje się w nowszym klastrze (opartym na zestawie skalowania maszyn wirtualnych — CNAME kończącym się na *.cloudapp.azure.com) i strefowo nadmiarowym, możesz pominąć poniższe kroki.

  1. Najpierw uruchom polecenie nslookup w przestrzeni nazw.

    nslookup <yournamespace>.servicebus.windows.net
    
  2. Zanotuj nazwę w sekcji odpowiedzi nieautorytatywnej, która jest w jednym z następujących formatów:

    <name>-s1.cloudapp.net
    <name>-s2.cloudapp.net
    <name>-s3.cloudapp.net
    
  3. Uruchom polecenie nslookup dla każdego z sufiksami s1, s2 i s3, aby uzyskać adresy IP wszystkich trzech wystąpień uruchomionych w trzech strefach dostępności,

    Uwaga

    Adres IP zwracany przez nslookup polecenie nie jest statycznym adresem IP. Pozostaje jednak stała do momentu usunięcia lub przeniesienia bazowego wdrożenia do innego klastra.

Jakie adresy IP klienta wysyłają zdarzenia do mojej przestrzeni nazw lub odbierają zdarzenia?

Najpierw włącz filtrowanie adresów IP w przestrzeni nazw.

Następnie włącz dzienniki diagnostyczne dla zdarzeń połączenia sieci wirtualnej usługi Event Hubs, postępując zgodnie z instrukcjami w obszarze Włączanie dzienników diagnostycznych. Zostanie wyświetlony adres IP, dla którego połączenie zostało odrzucone.

{
    "SubscriptionId": "0000000-0000-0000-0000-000000000000",
    "NamespaceName": "namespace-name",
    "IPAddress": "1.2.3.4",
    "Action": "Deny Connection",
    "Reason": "IPAddress doesn't belong to a subnet with Service Endpoint enabled.",
    "Count": "65",
    "ResourceId": "/subscriptions/0000000-0000-0000-0000-000000000000/resourcegroups/testrg/providers/microsoft.eventhub/namespaces/namespace-name",
    "Category": "EventHubVNetConnectionEvent"
}

Ważne

Dzienniki sieci wirtualnej są generowane tylko wtedy, gdy przestrzeń nazw zezwala na dostęp z określonych adresów IP (reguł filtrowania adresów IP). Jeśli nie chcesz ograniczać dostępu do przestrzeni nazw przy użyciu tych funkcji i nadal chcesz uzyskać dzienniki sieci wirtualnej w celu śledzenia adresów IP klientów łączących się z przestrzenią nazw usługi Event Hubs, możesz użyć następującego obejścia: Włącz filtrowanie adresów IP i dodaj łączny adresowalny zakres IPv4 (128.0.0.0/1 - 0.0.0.0/1) i zakres IPv6 ().::/1 - 8000::/1

Uwaga

Obecnie nie można określić źródłowego adresu IP pojedynczego komunikatu lub zdarzenia.

Integracja z platformą Apache Kafka

Jak mogę zintegrować istniejącą aplikację platformy Kafka z usługą Event Hubs?

Usługa Event Hubs udostępnia punkt końcowy platformy Kafka, który może być używany przez istniejące aplikacje oparte na platformie Apache Kafka. Zmiana konfiguracji to wszystko, co jest wymagane do posiadania środowiska Platformy Kafka PaaS. Stanowi alternatywę dla uruchamiania własnego klastra platformy Kafka. Usługa Event Hubs obsługuje platformę Apache Kafka 1.0 i nowsze wersje klienta oraz współpracuje z istniejącymi aplikacjami, narzędziami i strukturami platformy Kafka. Aby uzyskać więcej informacji, zobacz Event Hubs for Kafka repo (Usługa Event Hubs dla repozytorium platformy Kafka).

Jakie zmiany konfiguracji należy wprowadzić, aby moja istniejąca aplikacja mogła komunikować się z usługą Event Hubs?

Aby nawiązać połączenie z centrum zdarzeń, należy zaktualizować konfiguracje klienta platformy Kafka. Odbywa się to przez utworzenie przestrzeni nazw usługi Event Hubs i uzyskanie parametry połączenia. Zmień nazwę bootstrap.servers, aby wskazywała nazwę FQDN usługi Event Hubs i port na 9093. Zaktualizuj plik sasl.jaas.config, aby skierować klienta platformy Kafka do punktu końcowego usługi Event Hubs (który jest parametry połączenia uzyskanym), przy użyciu poprawnego uwierzytelniania, jak pokazano poniżej:

bootstrap.servers={YOUR.EVENTHUBS.FQDN}:9093
request.timeout.ms=60000
security.protocol=SASL_SSL
sasl.mechanism=PLAIN
sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="$ConnectionString" password="{YOUR.EVENTHUBS.CONNECTION.STRING}";

Przykład:

bootstrap.servers=dummynamespace.servicebus.windows.net:9093
request.timeout.ms=60000
security.protocol=SASL_SSL
sasl.mechanism=PLAIN
sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="$ConnectionString" password="Endpoint=sb://dummynamespace.servicebus.windows.net/;SharedAccessKeyName=DummyAccessKeyName;SharedAccessKey=XXXXXXXXXXXXXXXXXXXXX";

Uwaga

Jeśli plik sasl.jaas.config nie jest obsługiwaną konfiguracją w twojej strukturze, znajdź konfiguracje używane do ustawiania nazwy użytkownika i hasła SASL i użyj ich zamiast tego. Ustaw nazwę użytkownika na $ConnectionString i hasło na parametry połączenia usługi Event Hubs.

Jaki jest rozmiar komunikatu/zdarzenia dla usługi Event Hubs?

Maksymalny dozwolony rozmiar komunikatu dla usługi Event Hubs wynosi 1 MB.

Jednostki przepływności

Co to są jednostki przepływności usługi Event Hubs? (Warstwa Standardowa)

Przepływność w usłudze Event Hubs definiuje ilość danych w megabajtach lub liczbę (w tysiącach) 1 KB zdarzeń przychodzących i wychodzących za pośrednictwem usługi Event Hubs. Ta przepływność jest mierzona w jednostkach przepływności (TU). Kup jednostki TU przed rozpoczęciem korzystania z usługi Event Hubs. Możesz jawnie wybrać jednostki TU usługi Event Hubs przy użyciu portalu lub szablonów usługi Resource Manager usługi Event Hubs.

Czy jednostki przepływności mają zastosowanie do wszystkich centrów zdarzeń w przestrzeni nazw?

Tak, jednostki przepływności mają zastosowanie do wszystkich centrów zdarzeń w przestrzeni nazw usługi Event Hubs. Oznacza to, że jednostki TU są kupowane na poziomie przestrzeni nazw i są współużytkowane przez centra zdarzeń w ramach tej przestrzeni nazw. Każdy tu uprawnia przestrzeń nazw do następujących możliwości:

  • Do 1 MB na sekundę zdarzeń przychodzących (zdarzeń wysyłanych do centrum zdarzeń), ale nie więcej niż 1000 zdarzeń ruchu przychodzącego, operacji zarządzania lub wywołań interfejsu API sterowania na sekundę.
  • Do 2 MB na sekundę zdarzeń ruchu wychodzącego (zdarzeń zużywanych z centrum zdarzeń), ale nie więcej niż 4096 zdarzeń ruchu wychodzącego.
  • Do 84 GB magazynu zdarzeń (wystarczy do domyślnego 1-godzinnego okresu przechowywania).

Jak są naliczane opłaty za jednostki przepływności?

Jednostki przepływności (TU) są rozliczane co godzinę. Rozliczenia są oparte na maksymalnej liczbie jednostek wybranych w danej godzinie.

Jak zoptymalizować użycie jednostek przepływności?

Możesz uruchomić jedną jednostkę przepływności (TU) i włączyć automatyczne rozszerzanie. Funkcja autoinflate umożliwia zwiększanie liczby jednostek RU w miarę wzrostu ruchu/ładunku. Można również ustawić górny limit liczby jednostek TU.

Jak działa funkcja Autoinflate usługi Event Hubs?

Funkcja autoinflate umożliwia skalowanie w górę jednostek przepływności (TU). Oznacza to, że można zacząć od zakupu niskich jednostek TU i automatycznego zwiększania skali w górę jednostek Tu w miarę wzrostu ruchu przychodzącego. Zapewnia ona ekonomiczną opcję i pełną kontrolę nad liczbą jednostek TU do zarządzania. Ta funkcja jest funkcją tylko do skalowania w górę i można całkowicie kontrolować skalowanie w dół liczby jednostek TU, aktualizując ją.

Możesz zacząć od jednostek o niskiej przepływności (TU), na przykład 2 jednostki TU. Jeśli przewidujesz, że ruch może wzrosnąć do 15 jednostek TU, włącz funkcję automatycznego rozszerzania w przestrzeni nazw i ustaw maksymalny limit na 15 jednostek TU. Teraz możesz automatycznie zwiększać jednostki TU w miarę wzrostu ruchu.

Czy po włączeniu funkcji automatycznego rozszerzania jest skojarzony koszt?

Ta funkcja nie wiąże się z żadnymi kosztami .

Czy można włączyć nadmiarowość strefy dla istniejącej przestrzeni nazw usługi Event Hubs?

Obecnie nie jest to możliwe, ponieważ stare przestrzenie nazw usługi Event Hubs znajdują się w różnych klastrach i nie ma możliwości migracji ich do nowych klastrów, które automatycznie włączają nadmiarowość stref po utworzeniu nowych przestrzeni nazw centrum zdarzeń.

W jaki sposób są wymuszane limity przepływności?

Jeśli łączna przepływność ruchu przychodzącego lub łączna szybkość zdarzeń ruchu przychodzącego we wszystkich centrach zdarzeń w przestrzeni nazw przekracza zagregowane przydziały jednostek przepływności, nadawcy są ograniczani i otrzymują błędy wskazujące, że limit przydziału ruchu przychodzącego został przekroczony.

Jeśli łączna przepływność ruchu wychodzącego lub łączna szybkość ruchu wychodzącego zdarzeń we wszystkich centrach zdarzeń w przestrzeni nazw przekracza zagregowane przydziały jednostek przepływności, odbiorniki są ograniczane, ale nie są generowane żadne błędy ograniczania przepustowości.

Limity przydziału ruchu przychodzącego i wychodzącego są wymuszane oddzielnie, dzięki czemu żaden nadawca nie może spowodować spowolnienia użycia zdarzeń ani uniemożliwić odbiorcy wysyłanie zdarzeń do centrum zdarzeń.

Czy istnieje limit liczby jednostek przepływności, które można zarezerwować/wybrać?

Podczas tworzenia przestrzeni nazw w warstwie Podstawowa lub Standardowa w witrynie Azure Portal możesz wybrać maksymalnie 40 jednostek TU dla przestrzeni nazw. Usługa Event Hubs oferuje modele oparte na zasobach/pojemnościach, takie jak klastry Event Hubs Premium i Event Hubs Dedicated. Aby uzyskać więcej informacji, zobacz Event Hubs Premium — omówienie i Usługa Event Hubs Dedicated — omówienie.

Dedykowane klastry

Co to jest dedykowany klaster?

Dedykowane klastry usługi Event Hubs oferują wdrożenia z jedną dzierżawą dla klientów z najbardziej wymagającymi wymaganiami. Ta oferta tworzy klaster oparty na pojemności, który nie jest powiązany z jednostkami przepływności. Oznacza to, że można użyć klastra do pozyskiwania i przesyłania strumieniowego danych zgodnie z dyktowaniem użycia procesora CPU i pamięci klastra. Aby uzyskać więcej informacji, zobacz Event Hubs Dedicated clusters (Dedykowane klastry usługi Event Hubs).

Jak mogę utworzyć dedykowany klaster usługi Event Hubs?

Aby uzyskać instrukcje krok po kroku i więcej informacji na temat konfigurowania dedykowanego klastra usługi Event Hubs, zobacz Przewodnik Szybki start: tworzenie dedykowanego klastra usługi Event Hubs przy użyciu witryny Azure Portal.

Co można osiągnąć za pomocą klastra?

W przypadku klastra usługi Event Hubs, ile można pozyskiwać i przesyłać strumieniowo, zależy od czynników, takich jak producenci, konsumenci i szybkość pozyskiwania i przetwarzania.

W poniższej tabeli przedstawiono wyniki testu porównawczego osiągnięte podczas testowania przy użyciu starszego dedykowanego klastra.

Kształt ładunku Odbiorcy Przepustowość ruchu przychodzącego Komunikaty przychodzące Przepustowość ruchu wychodzącego Komunikaty ruchu wychodzącego Łączna liczba jednostek RU Jednostki TU na cu
Partie 100x1 KB 2 400 MB/s 400 tys. komunikatów na sekundę 800 MB/s 800 tys. komunikatów na sekundę 400 jednostek RU 100 jednostek RU
Partie 10x10 KB 2 666 MB/s 66,6 tys. komunikatów na sekundę 1,33 GB/s 133 tys. komunikatów na sekundę 666 jednostek RU 166 jednostek RU
Partie 6x32 KB 1 1,05 GB/s 34 tys. komunikatów na sekundę 1,05 GB/s 34 tys. komunikatów na sekundę 1000 jednostek RU 250 jednostek RU

W testach użyto następujących kryteriów:

  • Użyto klastra usługi Event Hubs w warstwie Dedykowanej z czterema jednostkami organizacyjnymi.
  • Centrum zdarzeń używane do pozyskiwania miało 200 partycji.
  • Pozyskane dane zostały odebrane przez dwie aplikacje odbiorcy odbierające ze wszystkich partycji.

Czy mogę skalować klaster w górę lub w dół?

Jeśli utworzysz klaster z zestawem opcji Obsługa skalowania , możesz użyć środowiska samoobsługowego , aby skalować w poziomie i skalować w poziomie zgodnie z potrzebami. Można skalować do 10 jednostek CU za pomocą skalowalnych klastrów samoobsługowych. Samoobsługowe dedykowane klastry są oparte na nowej infrastrukturze, dzięki czemu działają lepiej niż dedykowane klastry, które nie obsługują samoobsługowego skalowania. Wydajność dedykowanych klastrów zależy od czynników, takich jak alokacja zasobów, liczba partycji i magazyn. Zalecamy określenie wymaganej liczby jednostek CU po przetestowaniu rzeczywistego obciążenia.

Prześlij wniosek o pomoc techniczną w celu skalowania w poziomie lub skalowania w dedykowanym klastrze w następujących scenariuszach:

  • Potrzebujesz więcej niż 10 jednostek CU dla skalowalnego klastra dedykowanego (klastra utworzonego przy użyciu zestawu opcji Skalowanie obsługi ).
  • Musisz skalować w poziomie lub skalować w klastrze, który został utworzony bez wybierania opcji Skalowanie obsługi.
  • Należy skalować w poziomie lub skalować w dedykowanym klastrze, który został utworzony przed wydaniem środowiska samoobsługowego.

Ostrzeżenie

Po utworzeniu klastra nie będzie można go usunąć przez co najmniej cztery godziny. Opłata jest naliczana za co najmniej cztery godziny użycia klastra. Aby uzyskać więcej informacji na temat cen, zobacz Cennik usługi Event Hubs.

Czy mogę przeprowadzić migrację ze starszego klastra do skalowalnego klastra samoobsługowego?

Ze względu na różnicę w podstawowej infrastrukturze sprzętowej i programowej nie obsługujemy obecnie migracji klastrów, które nie obsługują samoobsługowego skalowania do skalowalnych klastrów dedykowanych. Jeśli chcesz użyć samoobsługowego skalowania, musisz ponownie utworzyć klaster. Aby dowiedzieć się, jak utworzyć skalowalny klaster, zobacz Tworzenie dedykowanego klastra usługi Event Hubs.

Kiedy należy skalować dedykowany klaster?

Użycie procesora CPU jest kluczowym wskaźnikiem zużycia zasobów dedykowanego klastra. Gdy całkowite użycie procesora CPU zaczyna osiągać 70% (bez obserwowania nietypowych warunków, takich jak duża liczba błędów serwera lub mała liczba żądań zakończonych powodzeniem), oznacza to, że klaster przechodzi w kierunku maksymalnej pojemności. Możesz użyć tych informacji jako wskaźnika, aby rozważyć, czy chcesz skalować w górę dedykowany klaster, czy nie.

Aby monitorować użycie procesora CPU dedykowanego klastra, wykonaj następujące kroki:

  1. Na stronie Metryki dedykowanego klastra usługi Event Hubs wybierz pozycję Dodaj metrykę.

  2. Wybierz pozycję Procesor CPU jako metryka i użyj opcji Maksimum jako agregacji.

    Zrzut ekranu przedstawiający stronę Metryki z metrykami procesora CPU.

  3. Wybierz pozycję Dodaj filtr i dodaj filtr dla roli Typ właściwości. Użyj operatora równości i wybierz wszystkie wartości (zaplecze i brama) z listy rozwijanej.

    Zrzut ekranu przedstawiający stronę Metryki z metrykami i rolami użycia procesora CPU.

    Następnie możesz monitorować tę metryę, aby określić, kiedy należy skalować dedykowany klaster. Możesz również skonfigurować alerty dotyczące tej metryki, aby otrzymywać powiadomienia, gdy użycie procesora CPU osiągnie ustawione progi.

Jak działa odzyskiwanie po awarii geograficznej z moim klastrem?

Przestrzeń nazw można sparować geograficznie w ramach klastra warstwy dedykowanej z inną przestrzenią nazw w ramach klastra warstwy dedykowanej. Nie zachęcamy do parowania przestrzeni nazw dedykowanej warstwy z przestrzenią nazw w ofercie Standardowa, ponieważ limit przepływności jest niezgodny i powoduje błędy.

Czy mogę przeprowadzić migrację przestrzeni nazw w warstwie Standardowa lub Premium do klastra warstwy dedykowanej?

Obecnie nie obsługujemy zautomatyzowanego procesu migracji do migrowania danych usługi Event Hubs z przestrzeni nazw w warstwie Standardowa lub Premium do dedykowanej.

Dlaczego starszy klaster dedykowany strefowo nadmiarowy ma co najmniej osiem jednostek CU?

Aby zapewnić nadmiarowość strefy dla oferty dedykowanej, wszystkie zasoby obliczeniowe muszą mieć trzy repliki w trzech centrach danych w tym samym regionie. To minimalne wymaganie obsługuje nadmiarowość strefy (dzięki czemu usługa może nadal działać, gdy dwie strefy lub centra danych nie działają) i powoduje, że pojemność obliczeniowa jest równoważna ośmiu jednostek SKU.

Nie można zmienić tego limitu przydziału. Jest to ograniczenie bieżącej architektury z warstwą Dedykowana.

Partycje

Ile partycji potrzebuję?

Jako partycja to mechanizm organizacji danych, który umożliwia równoległe publikowanie i używanie danych. Zalecamy równoważenie jednostek skalowania (jednostek przepływności dla warstwy Standardowa, jednostek przetwarzania dla warstwy Premium lub jednostek pojemności dla warstwy dedykowanej) i partycji w celu uzyskania optymalnej skali. Ogólnie rzecz biorąc, zalecamy maksymalną przepływność wynoszącą 1 MB/s na partycję. W związku z tym regułą kciuka do obliczenia liczby partycji byłoby podzielenie maksymalnej oczekiwanej przepływności o 1 MB/s. Jeśli na przykład przypadek użycia wymaga 20 MB/s, zalecamy wybranie co najmniej 20 partycji w celu uzyskania optymalnej przepływności.

Jeśli jednak masz model, w którym aplikacja ma koligację z określoną partycją, zwiększenie liczby partycji nie jest korzystne. Aby uzyskać więcej informacji, zobacz dostępność i spójność.

Czy liczba partycji może zostać zwiększona w warstwie Standardowa usługi Event Hubs?

Nie, nie jest możliwe, ponieważ partycje są niezmienne w warstwie Standardowa. Dynamiczne dodawanie partycji jest dostępne tylko w warstwach Premium i dedykowanych usługi Event Hubs.

Cennik

Gdzie można znaleźć więcej informacji o cenach?

Aby uzyskać pełne informacje o cenach usługi Event Hubs, zobacz szczegóły cennika usługi Event Hubs.

Czy jest naliczana opłata za przechowywanie zdarzeń usługi Event Hubs przez ponad 24 godziny?

Warstwa Standardowa usługi Event Hubs zezwala na okres przechowywania komunikatów dłuższy niż 24 godziny przez maksymalnie siedem dni. Jeśli łączna liczba przechowywanych zdarzeń przekracza limit magazynu dla liczby wybranych jednostek przepływności (84 GB na jednostkę przepływności), rozmiar przekraczający limit jest naliczany według opublikowanej stawki magazynu obiektów blob platformy Azure. Limit magazynowania w każdej jednostce przepływności obejmuje wszystkie koszty magazynowania dla okresów przechowywania wynoszących 24 godziny, nawet jeśli jednostka przepływności jest używana do maksymalnego limitu przydziału ruchu przychodzącego.

Jak jest obliczany i naliczany rozmiar magazynu usługi Event Hubs?

Łączny rozmiar wszystkich przechowywanych zdarzeń, łącznie z wewnętrznym obciążeniem nagłówków zdarzeń lub struktur magazynu dysków we wszystkich centrach zdarzeń, jest mierzony przez cały dzień. Na koniec dnia wyliczana jest szczytowa wielkość magazynu. Dzienny limit magazynu jest wyliczany na podstawie minimalnej liczby jednostek przepływności, które zostały wybrane w ciągu dnia (każda jednostka przepływności ma limit 84 GB). Jeśli łączny rozmiar przekracza obliczony dzienny limit miejsca do magazynowania, nadwyżka magazynu jest naliczana przy użyciu stawek magazynu obiektów blob platformy Azure (z szybkością magazynowania lokalnie nadmiarowego).

Jak są obliczane zdarzenia ruchu przychodzącego?

Każde zdarzenie wysyłane do centrum zdarzeń jest liczone jako komunikat rozliczany. Zdarzenie ruchu przychodzącego jest definiowane jako jednostka danych, która jest mniejsza lub równa 64 KB. Każde zdarzenie o rozmiarze mniejszym lub równym 64 KB jest uważane za jedno zdarzenie rozliczane. Jeśli zdarzenie jest większe niż 64 KB, liczba rozliczanych zdarzeń jest obliczana zgodnie z rozmiarem zdarzenia w wielokrotnościach 64 KB. Na przykład zdarzenie 8 KB wysyłane do centrum zdarzeń jest rozliczane jako jedno zdarzenie, ale komunikat 96 KB wysłany do centrum zdarzeń jest rozliczany jako dwa zdarzenia.

Zdarzenia używane z centrum zdarzeń oraz operacje zarządzania i wywołania sterowania, takie jak punkty kontrolne, nie są uwzględniane jako rozliczane zdarzenia ruchu przychodzącego, ale są naliczane do limitu jednostek przepływności.

Czy opłaty za połączenia obsługiwane przez brokera mają zastosowanie do usługi Event Hubs?

Opłaty za połączenia mają zastosowanie tylko wtedy, gdy jest używany protokół AMQP. Nie ma opłat za połączenia związane z przesyłaniem zdarzeń przez protokół HTTP niezależnie od liczby systemów lub urządzeń wysyłających. Jeśli planujesz używać protokołu AMQP (na przykład w celu uzyskania bardziej wydajnego przesyłania strumieniowego zdarzeń lub włączenia dwukierunkowej komunikacji w scenariuszach poleceń i kontroli IoT), zobacz stronę z informacjami o cenach usługi Event Hubs, aby uzyskać szczegółowe informacje o liczbie połączeń zawartych w każdej warstwie usługi.

W jaki sposób są naliczane opłaty za funkcję przechwytywanie usługi Event Hubs?

Przechwytywanie jest włączone, gdy w dowolnym centrum zdarzeń w przestrzeni nazw jest włączona opcja Przechwytywanie. Usługa Event Hubs Capture jest rozliczana co miesiąc za zakupioną jednostkę przepływności. W miarę zwiększania lub zmniejszania liczby jednostek przepływności rozliczenia przechwytywania usługi Event Hubs odzwierciedla te zmiany w przyrostach całkowitych godzin. Aby uzyskać więcej informacji na temat rozliczeń usługi Event Hubs Capture, zobacz Informacje o cenach usługi Event Hubs.

Czy są naliczane opłaty za wybrane konto magazynu w przypadku przechwytywania usługi Event Hubs?

Przechwytywanie używa konta magazynu podanego po włączeniu w centrum zdarzeń. Ponieważ jest to twoje konto magazynu, wszelkie zmiany tej konfiguracji są rozliczane w ramach subskrypcji platformy Azure.

Normy sprzedaży

Czy istnieją przydziały skojarzone z usługą Event Hubs?

Aby uzyskać listę wszystkich przydziałów usługi Event Hubs, zobacz limity przydziału.

Rozwiązywanie problemów

Dlaczego nie mogę utworzyć przestrzeni nazw po usunięciu jej z innej subskrypcji?

Po usunięciu przestrzeni nazw z subskrypcji poczekaj 4 godziny przed ponownym utworzeniem jej o tej samej nazwie w innej subskrypcji. W przeciwnym razie może zostać wyświetlony następujący komunikat o błędzie: Namespace already exists.

Jakie są niektóre wyjątki generowane przez usługę Event Hubs i ich sugerowane akcje?

Aby uzyskać listę możliwych wyjątków usługi Event Hubs, zobacz Omówienie wyjątków.

Dzienniki diagnostyczne

Usługa Event Hubs obsługuje dwa typy dzienników diagnostycznych — przechwytywanie dzienników błędów i dzienników operacyjnych — oba te dzienniki są reprezentowane w formacie json i można je włączyć za pośrednictwem witryny Azure Portal.

Pomoc techniczna i umowa SLA

Pomoc techniczna dla usługi Event Hubs jest dostępna za pośrednictwem strony pytań i odpowiedzi firmy Microsoft dla usługi Azure Service Bus. Pomoc dotycząca rozliczeń i subskrypcji jest świadczona bezpłatnie.

Aby dowiedzieć się więcej o naszej umowie SLA, zobacz stronę Umowy dotyczące poziomu usług.

Azure Stack Hub

Jak mogę określić określoną wersję zestawu SDK usługi Azure Storage w przypadku korzystania z usługi Azure Blob Storage jako magazynu punktów kontrolnych?

Jeśli uruchomisz ten kod w usłudze Azure Stack Hub, wystąpią błędy środowiska uruchomieniowego, chyba że zostanie wyświetlona określona wersja interfejsu API usługi Storage. Dzieje się tak, ponieważ zestaw SDK usługi Event Hubs korzysta z najnowszego dostępnego interfejsu API usługi Azure Storage dostępnego na platformie Azure, który może nie być dostępny na platformie Azure Stack Hub. Usługa Azure Stack Hub może obsługiwać inną wersję zestawu SDK obiektów blob usługi Storage niż zwykle dostępna na platformie Azure. Jeśli używasz usługi Azure Blog Storage jako magazynu punktów kontrolnych, sprawdź obsługiwaną wersję interfejsu API usługi Azure Storage dla kompilacji i określania docelowej wersji usługi Azure Stack Hub w kodzie.

Jeśli na przykład korzystasz z usługi Azure Stack Hub w wersji 2005, najwyższa dostępna wersja usługi Storage to wersja 2019-02-02. Domyślnie biblioteka klienta zestawu SDK usługi Event Hubs używa najwyższej dostępnej wersji na platformie Azure (2019-07-07 w momencie wydania zestawu SDK). W tym przypadku oprócz wykonania kroków opisanych w tej sekcji należy również dodać kod do docelowego interfejsu API usługi Storage w wersji 2019-02-02. Aby zapoznać się z przykładem sposobu kierowania określonej wersji interfejsu API usługi Storage, zobacz następujące przykłady dla języków C#, Java, Python i JavaScript/TypeScript.

Aby zapoznać się z przykładem sposobu kierowania określonej wersji interfejsu API usługi Storage z kodu, zobacz następujące przykłady w witrynie GitHub:

Następne kroki

Następujące linki pozwalają dowiedzieć się więcej na temat usługi Event Hubs: