Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule przedstawiono podsumowanie kroków opracowywania i testowania lokalnego przy użyciu emulatora usługi Azure Event Hubs.
Wymagania wstępne
- Docker Desktop
- Minimalne wymagania sprzętowe:
- 2 GB pamięci RAM
- 5 GB miejsca na dysku
- konfiguracja Podsystem Windows dla systemu Linux (tylko dla systemu Windows):
Uwaga
Przed kontynuowaniem kroków opisanych w tym artykule upewnij się, że program Docker Desktop działa w tle.
Uruchamianie emulatora
Aby uruchomić emulator usługi Event Hubs, możesz użyć zautomatyzowanego skryptu lub kontenera systemu Linux:
Przed uruchomieniem zautomatyzowanego skryptu sklonuj repozytorium instalatora GitHub emulatora lokalnie.
Windows
Wykonaj poniższe kroki, aby uruchomić emulator usługi Event Hubs lokalnie w systemie Windows.
-
Otwórz program PowerShell i przejdź do katalogu, w którym sklonowany jest folder skryptów common przy użyciu
cd
:cd <path to your common scripts folder> # Update this path
- Wydaj polecenie wsl, aby otworzyć program WSL w tym katalogu.
wsl
-
Uruchom skrypt instalacyjny./LaunchEmulator.sh Uruchomienie skryptu powoduje wyświetlenie dwóch kontenerów: emulatora usługi Event Hubs i Azurite (zależności dla emulatora).
./Launchemulator.sh
Linux i macOS
Aby uruchomić emulator usługi Event Hubs lokalnie w systemie Linux lub macOS:
- Uruchom skrypt konfiguracji LaunchEmulator.sh. Uruchomienie skryptu powoduje wyświetlenie dwóch kontenerów: emulator usługi Event Hubs i Azurite (zależność emulatora).
Po pomyślnym wykonaniu tych kroków można znaleźć kontenery uruchomione na platformie Docker.
Interakcja z emulatorem
Domyślnie emulator używa config.json pliku konfiguracji. Jednostki (tematy usługi Event Hubs/Kafka) można skonfigurować, wprowadzając zmiany w pliku konfiguracji. Aby dowiedzieć się więcej, odwiedź stronę wprowadzanie zmian konfiguracji
Do nawiązania połączenia z emulatorem usługi Event Hubs można użyć następujących parametry połączenia:
- Gdy kontener emulatora i aplikacja współdziałają natywnie na komputerze lokalnym, użyj następujących parametry połączenia:
"Endpoint=sb://localhost;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=SAS_KEY_VALUE;UseDevelopmentEmulator=true;"
- Aplikacje (konteneryzowane/niekontenerowane) na różnych maszynach i tej samej sieci lokalnej mogą wchodzić w interakcję z emulatorem przy użyciu adresu IPv4 maszyny. Użyj następujących parametry połączenia:
"Endpoint=sb://192.168.y.z;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=SAS_KEY_VALUE;UseDevelopmentEmulator=true;"
- Kontenery aplikacji w tej samej sieci mostka mogą wchodzić w interakcje z emulatorem przy użyciu aliasu lub adresu IP. Po parametry połączenia przyjęto założenie, że nazwa emulatora ma wartość domyślną"eventhubs-emulator":
"Endpoint=sb://eventhubs-emulator;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=SAS_KEY_VALUE;UseDevelopmentEmulator=true;"
- Kontenery aplikacji w innej sieci mostka mogą współdziałać z emulatorem przy użyciu hosta "host.docker.internal". Użyj następujących parametry połączenia:
"Endpoint=sb://host.docker.internal;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=SAS_KEY_VALUE;UseDevelopmentEmulator=true;"
Podczas interakcji z platformą Kafka upewnij się, że ustawiono konfigurację producent i odbiorca w następujący sposób:
{
BootstrapServers = //Value of bootstrap servers would depend on kind of connection string being used
SecurityProtocol = SecurityProtocol.SaslPlaintext,
SaslMechanism = SaslMechanism.Plain,
SaslUsername = "$ConnectionString",
SaslPassword = //Value of connection string would depend on topology
};
Wartość bootstrapServers i SaslPassword zależy od topologii konfiguracji. Aby uzyskać szczegółowe informacje, zobacz sekcję Interakcja z emulatorem .
Ważne
W przypadku korzystania z platformy Kafka tylko interfejsy API producentów i konsumentów są zgodne z emulatorem usługi Event Hubs.
Aby rozpocząć, zapoznaj się z przykładami emulatora usługi Event Hubs w witrynie GitHub.