Omówienie emulatora usługi Azure Event Hubs
Emulator usługi Azure Event Hubs oferuje lokalne środowisko programistyczne dla usługi Event Hubs. Możesz użyć emulatora do tworzenia i testowania kodu względem usługi w izolacji, bez zakłóceń w chmurze.
Świadczenia
Podstawowe zalety korzystania z emulatora to:
- Programowanie lokalne: emulator zapewnia lokalne środowisko programistyczne, dzięki czemu możesz pracować w trybie offline i uniknąć opóźnienia sieci.
- Efektywność kosztowa: dzięki emulatorowi możesz przetestować aplikacje bez ponoszenia kosztów użycia chmury.
- Izolowane środowisko testowe: możesz przetestować kod w izolacji, aby upewnić się, że inne działania w chmurze nie wpływają na testy.
- Zoptymalizowana pętla programowania wewnętrznego: możesz użyć emulatora do szybkiego tworzenia prototypów i testowania aplikacji przed ich wdrożeniem w chmurze.
Uwaga
Emulator usługi Event Hubs jest dostępny w ramach postanowień licencyjnych dotyczących oprogramowania firmy Microsoft.
Funkcje
Emulator udostępnia następujące funkcje:
- Wdrożenie konteneryzowane: działa jako kontener platformy Docker (oparty na systemie Linux).
- Zgodność międzyplatformowa: można jej używać na dowolnej platformie, w tym w systemach Windows, macOS i Linux.
- Możliwość konfigurowania: możesz zarządzać liczbą centrów zdarzeń, partycji i innych jednostek przy użyciu dostarczonej konfiguracji JSON.
- Obsługa przesyłania strumieniowego: obsługuje zdarzenia przesyłania strumieniowego przy użyciu platformy Kafka i protokołu Advanced Message Queuing Protocol (AMQP).
- Możliwość obserwowania: zapewnia funkcje obserwacji, w tym konsolę i rejestrowanie plików.
Znane ograniczenia
Bieżąca wersja emulatora ma następujące ograniczenia:
W przypadku korzystania z platformy Kafka tylko interfejsy API producentów i konsumentów są zgodne z emulatorem usługi Event Hubs.
W obszarze Konfiguracja
securityProtocol
saslmechanism
platformy Kafka mogą mieć tylko następujące wartości:SecurityProtocol = SecurityProtocol.SaslPlaintext, SaslMechanism = SaslMechanism.Plain
Nie obsługuje on operacji zarządzania na bieżąco za pośrednictwem zestawu SDK po stronie klienta.
Uwaga
Po ponownym uruchomieniu kontenera dane i jednostki nie są utrwalane w emulatorze.
Różnice w porównaniu z usługą w chmurze
Ponieważ emulator usługi Event Hubs jest przeznaczony tylko do celów programistycznych i testowych, istnieją różnice funkcjonalne między emulatorem a usługą w chmurze.
Emulator nie obsługuje tych funkcji wysokiego poziomu:
- Funkcje platformy Azure, takie jak integracja z siecią wirtualną, integracja identyfikatora Microsoft Entra, dzienniki aktywności i portal interfejsu użytkownika
- Przechwytywanie usługi Event Hubs
- Funkcje ładu zasobów, takie jak grupy aplikacji
- Możliwości automatycznego skalowania
- Możliwości odzyskiwania po awarii geograficznej
- Integracja rejestru schematów
- Metryki wizualizacji i alerty
Uwaga
Emulator jest przeznaczony wyłącznie dla scenariuszy programowania i testowania. Zniechęcimy do wszelkiego rodzaju zastosowań produkcyjnych. Nie udostępniamy żadnej oficjalnej pomocy technicznej dla emulatora.
Zgłoś wszelkie problemy lub sugestie w repozytorium instalatora GitHub emulatora.
Przydziały użycia
Podobnie jak usługa w chmurze usługi Event Hubs, emulator zapewnia następujące limity przydziału użycia:
Właściwości | Wartość | Użytkownik można konfigurować w granicach |
---|---|---|
Liczba obsługiwanych przestrzeni nazw | 1 | Nie. |
Maksymalna liczba centrów zdarzeń w przestrzeni nazw | 10 | Tak |
Maksymalna liczba grup odbiorców w centrum zdarzeń | 20 | Tak |
Maksymalna liczba partycji w centrum zdarzeń | 32 | Tak |
Maksymalny rozmiar zdarzenia publikowanego w centrum zdarzeń (batch/nonbatch) | 1 MB | Nie. |
Minimalny czas przechowywania zdarzeń | 1 godz. | Nie. |
Zmiany konfiguracji limitu przydziału
Domyślnie emulator jest uruchamiany z plikiem konfiguracji config.json . Przydziały skojarzone z usługą Event Hubs można skonfigurować, edytując ten plik w następujący sposób w zależności od potrzeb:
- Jednostki: można dodać więcej jednostek (centrów zdarzeń) z dostosowaną liczbą partycji i grup odbiorców zgodnie z obsługiwanymi limitami przydziału.
- Rejestrowanie: emulator obsługuje rejestrowanie w konsoli, w pliku lub obu tych plikach. Możesz wybrać zgodnie z preferencjami osobistymi.
Ważne
Przed uruchomieniem emulatora należy podać wszelkie zmiany w konfiguracji JSON. Zmiany nie są honorowane na bieżąco. Aby zmiany zaczęły obowiązywać, należy ponownie uruchomić kontener.
Nie można zmienić nazwy wstępnie zdefiniowanej przestrzeni nazw (name
) w pliku konfiguracji.
Dzienniki debugowania
Podczas testowania dzienniki konsoli lub plików ułatwiają debugowanie nieoczekiwanych błędów. Aby przejrzeć dzienniki:
- Dzienniki konsoli: w interfejsie użytkownika pulpitu platformy Docker wybierz nazwę kontenera.
- Dzienniki plików: w kontenerze przejdź do folderu /home/app/EmulatorLogs.
Powiązana zawartość
Testowanie lokalnie przy użyciu emulatora usługi Azure Event Hubs