Udostępnij za pośrednictwem


Omówienie emulatora usługi Azure Service Bus

Emulator usługi Azure Service Bus oferuje lokalne środowisko programistyczne dla usługi Service Bus. 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 Service Bus jest dostępny w ramach postanowień licencyjnych dotyczących oprogramowania firmy Microsoft.

Emulator usługi Service Bus nie jest zgodny z eksploratorem usługi Service Bus należącym do społeczności

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: liczbę jednostek usługi Service Bus można zarządzać przy użyciu konfiguracji dostarczonej w formacie JSON.
  • Obsługa przesyłania strumieniowego: obsługuje komunikaty przesyłane strumieniowo przy użyciu 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:

  • Nie może ona przesyłać strumieniowo komunikatów przy użyciu protokołu JMS.
  • Partycjonowane jednostki nie są zgodne z emulatorem.
  • 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 Service Bus 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
  • Możliwości automatycznego skalowania
  • Możliwości odzyskiwania po awarii geograficznej
  • Obsługa dużych komunikató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 Service Bus, emulator zapewnia następujące limity przydziału użycia:

Właściwości Wartość maksymalna Użytkownik można konfigurować w granicach
Liczba obsługiwanych przestrzeni nazw 1 Nie.
Liczba jednostek (kolejek/tematów) w przestrzeni nazw 50 Tak
Liczba subskrypcji na temat 50 Tak
Liczba filtrów korelacji na temat 1000 Tak
Liczba współbieżnych połączeń z przestrzenią nazw 10 Tak
Liczba współbieżnych żądań odbierania w jednostce (kolejka/temat) lub jednostce subskrypcji 200 Tak
Rozmiar komunikatu 256 KB Nie.
Rozmiar kolejki lub tematu 100 MB Nie.
Czas wygaśnięcia wiadomości 1 godz. Tak

Zmiany konfiguracji limitu przydziału

Domyślnie emulator jest uruchamiany z plikiem konfiguracji config.json . Przydziały skojarzone z usługą Service Bus można skonfigurować, edytując ten plik w następujący sposób, w zależności od potrzeb:

  • Jednostki: możesz dodać więcej jednostek usługi Service Bus 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.

Testowanie lokalne przy użyciu emulatora usługi Azure Service Bus