Szybki start: przesyłanie strumieniowe danych za pomocą usługi Event Hubs przy użyciu protokołu Kafka

W tym przewodniku Szybki start pokazano, jak przesyłać strumieniowo do usługi Event Hubs bez zmieniania klientów protokołu ani uruchamiania własnych klastrów. Dowiesz się, jak używać producentów i konsumentów do rozmowy z usługą Event Hubs przy użyciu tylko zmiany konfiguracji w aplikacjach.

Uwaga

Ten przykład jest dostępny w witrynie GitHub

Wymagania wstępne

Aby ukończyć ten przewodnik Szybki start, upewnij się, że dysponujesz następującymi elementami:

Tworzenie przestrzeni nazw usługi Event Hubs

Podczas tworzenia przestrzeni nazw usługi Event Hubs punkt końcowy platformy Kafka dla przestrzeni nazw jest automatycznie włączony. Zdarzenia można przesyłać strumieniowo z aplikacji korzystających z protokołu Kafka do centrów zdarzeń. Postępuj zgodnie z instrukcjami krok po kroku w temacie Tworzenie centrum zdarzeń przy użyciu witryny Azure Portal , aby utworzyć przestrzeń nazw usługi Event Hubs. Jeśli używasz dedykowanego klastra, zobacz Tworzenie przestrzeni nazw i centrum zdarzeń w dedykowanym klastrze.

Uwaga

Usługa Event Hubs dla platformy Kafka nie jest obsługiwana w warstwie podstawowa .

Wysyłanie i odbieranie komunikatów przy użyciu platformy Kafka w usłudze Event Hubs

  1. Sklonuj repozytorium usługi Azure Event Hubs dla platformy Kafka.

  2. Przejdź do obszaru azure-event-hubs-for-kafka/quickstart/java/producer.

  3. Zaktualizuj szczegóły konfiguracji producenta w pliku src/main/resources/producer.config w następujący sposób:

    bootstrap.servers=NAMESPACENAME.servicebus.windows.net:9093
    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}";
    

    Ważne

    Zastąp {YOUR.EVENTHUBS.CONNECTION.STRING} ciąg parametrami połączenia dla przestrzeni nazw usługi Event Hubs. Aby uzyskać instrukcje dotyczące pobierania parametrów połączenia, zobacz Pobieranie parametrów połączenia usługi Event Hubs. Oto przykładowa konfiguracja: sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="$ConnectionString" password="Endpoint=sb://mynamespace.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=XXXXXXXXXXXXXXXX";

  4. Uruchom kod producenta i przesyłaj strumieniowo zdarzenia do usługi Event Hubs:

    mvn clean package
    mvn exec:java -Dexec.mainClass="TestProducer"
    
  5. Przejdź do obszaru azure-event-hubs-for-kafka/quickstart/java/consumer.

  6. Zaktualizuj szczegóły konfiguracji użytkownika w pliku src/main/resources/consumer.config w następujący sposób:

    bootstrap.servers=NAMESPACENAME.servicebus.windows.net:9093
    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}";
    

    Ważne

    Zastąp {YOUR.EVENTHUBS.CONNECTION.STRING} ciąg parametrami połączenia dla przestrzeni nazw usługi Event Hubs. Aby uzyskać instrukcje dotyczące pobierania parametrów połączenia, zobacz Pobieranie parametrów połączenia usługi Event Hubs. Oto przykładowa konfiguracja: sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="$ConnectionString" password="Endpoint=sb://mynamespace.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=XXXXXXXXXXXXXXXX";

  7. Uruchom kod odbiorcy i przetwarzaj zdarzenia z centrum zdarzeń przy użyciu klientów platformy Kafka:

    mvn clean package
    mvn exec:java -Dexec.mainClass="TestConsumer"
    

Jeśli klaster platformy Kafka usługi Event Hubs ma zdarzenia, teraz zaczniesz otrzymywać je od konsumenta.

Następne kroki

W tym artykule przedstawiono sposób przesyłania strumieniowego do usługi Event Hubs bez zmieniania klientów protokołu ani uruchamiania własnych klastrów. Aby dowiedzieć się więcej, zobacz Przewodnik dewelopera platformy Apache Kafka dotyczący usługi Azure Event Hubs.