Docker-Bereitstellung von Kafka und Spring Kafka-Implementierung

Docker-Bereitstellung von Kafka und Spring Kafka-Implementierung

In diesem Artikel wird hauptsächlich die Bereitstellung von Kafka mit Docker und die Implementierung von Spring Kafka vorgestellt. Der Beispielcode in diesem Artikel ist sehr detailliert und hat einen gewissen Referenzwert für das Studium oder die Arbeit aller. Freunde, die ihn brauchen, können ihn zu Rate ziehen.

Finden Sie Kafka unter https://hub.docker.com/

Der dritte ist aktiv und hat mehr Sterne. Gehen Sie hinein und sehen Sie, wie man ihn benutzt.

Wir verwenden Docker-Compose, um das Image zu erstellen

Siehe die Datei docker-compose.yml in der Dokumentation

Da Kafka mit Zookeeper verwendet wird, enthält das Dokument Zookeeper

Ich habe die Versionsnummer und die variablen Parameter geändert

Diese beiden Parameter scheinen einem externen Netzwerkzugriff ausgesetzt zu sein (die Antwort aus anderen Blogs lautet, dass keine Verbindung hergestellt werden kann, wenn Spring Kafka nicht festgelegt ist).

Führen Sie den Befehl docker-compose up -d aus, um zwei Container zu starten.

Rufen Sie den Kafka-Container auf und verwenden Sie zum Testen die Anleitung auf der offiziellen Website: http://kafka.apache.org/quickstart

docker exec -it {Container-ID und -Name} /bin/bash

Geben Sie nach dem Aufrufen des Containers das Befehlsverzeichnis cd /opt/kafka/bin/ ein.

Schritt 1: Neues Thema erstellen

kafka-topics.sh --create --bootstrap-server 192.168.17.165:9092 --replication-factor 1 --partitions 1 --topic mytest (ändern Sie localhost in Ihre eigene IP-Nummer)

Schritt 2: Informationen senden: kafka-console-producer.sh --broker-list 192.168.17.165:9092 --topic mytest

Schritt 3: Öffnen Sie ein weiteres Fenster, um Informationen zu nutzen: kafka-console-consumer.sh --bootstrap-server 192.168.17.165:9092 --topic mytest --from-beginning

Es bedeutet, dass der Build erfolgreich war.

Beginnen Sie mit der Entwicklung von Spring Kafka

pom.xml:

Produzentenkonfiguration konfigurieren:

Consumer-Konfiguration konfigurieren

Die entsprechende Konfiguration stammt aus dem Kafka-Dokument der offiziellen Spring-Website: https://docs.spring.io/spring-kafka/docs/2.3.1.RELEASE/reference/html/

Senden von Informationen nach dem Erstellen einer Controller-Anforderung

Konfigurieren Sie den Listener:

Verwenden Sie die Annotation @KafkaListener. Die Dokumentation enthält entsprechende Anweisungen, daher werde ich sie nicht einzeln erklären.

Führen Sie das Projekt aus und fordern Sie dann die URL an, um das Protokoll anzuzeigen:

Die Konfiguration ist erfolgreich.

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Analyse der Verwendung des Spring Boot-Clusterverwaltungstools KafkaAdminClient
  • Spring Boot-Integration Kafka-Prozessanalyse
  • Spring Pure Java-Konfiguration, integriertes Kafka-Codebeispiel
  • Detaillierte Erläuterung der Kafka-Konfigurationsparameter in Spring Kafka
  • Beispielcode für die Integration von Springboot mit Kafka zur Implementierung von Produzent und Konsument
  • Beispielcode zur Integration von Kafka mit Spring Boot
  • Beispielcode zur Integration von Kafka+Storm mit Spring Boot
  • Codebeispiel für integrierten Kafka-Client von Springboot 1.5.7

<<:  jQuery+Ajax zum Erreichen eines einfachen Paging-Effekts

>>:  Installation und Verwendung von MySQL unter Ubuntu (allgemeine Version)

Artikel empfehlen

Zusammenfassung der sieben grundlegenden XHTML-Codierungsregeln

1. Alle Tags müssen ein entsprechendes End-Tag hab...

Detaillierte Beschreibung der chinesischen ffmpeg-Parameter

Details zu den Parametern der Version FFMPEG 3.4....

Grafisches Tutorial zur Installation und Konfiguration von MySQL 8.0.20 winx64

In diesem Artikel erfahren Sie mehr über die Inst...

Beispiele für die Verwendung von HTML-Metadaten

Beispielverwendung Code kopieren Der Code lautet w...

js realisiert das dynamische Laden von Daten durch Wasserfallfluss

In diesem Artikel erfahren Sie den spezifischen C...

Globale Aufrufimplementierung von Vue2.x Picker auf mobilen Endgeräten

Inhaltsverzeichnis Was ist die Picker-Komponente ...

Detaillierte Erklärung der HTML-Dokumenttypen

Meines ist: <!DOCTYPE html> Blog-Garten: &l...

Detailliertes Tutorial zur Installation des Quellcodes von CentOS6.9+Mysql5.7.18

Bei der Installation des Quellcodes von CentOS6.9...

JavaScript zum Erzielen eines einfachen Karusselleffekts

Was ist ein Karussell? Karussell: In einem Modul ...

Detaillierte Erklärung des Unterschieds zwischen JavaScript onclick und click

Inhaltsverzeichnis Warum wird addEventListener be...

Grafische Installationsschritte für VMware vSphere 6.7 (ESXI 6.7)

Umgebung: VMware VCSA 6.7 (VMware-VCSA-all-6.7.0-...

React-Tipps zeigen Ihnen, wie Sie Probleme mit Hook-Abhängigkeiten beseitigen

Ein sehr häufiges Szenario in react -Projekten: c...