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

So lösen Sie das Problem der hohen Parallelität in der MySQL-Datenbank

Vorwort Wir alle wissen, dass Startups zunächst m...

Detaillierte Erklärung, wann Javascript-Skripte ausgeführt werden

JavaScript-Skripte können überall in HTML eingebe...

Detaillierte Erklärung der Funktion und Verwendung der KeepAlive-Komponente in Vue

Vorwort Während des Vorstellungsgesprächs erwähne...

So ändern Sie die Standardspeicher-Engine in MySQL

MySQL-Speicher-Engine: Der MySQL-Server verwendet...

So verwenden Sie display:olck/none zum Erstellen einer Menüleiste

Die Auswirkung der Vervollständigung einer Menüle...

So optimieren Sie den Logikbeurteilungscode in JavaScript

Vorwort Zu den logischen Urteilsaussagen, die wir...

Müssen Designer das Programmieren lernen?

Oftmals wird nach der Fertigstellung eines Webdes...

Zusammenfassung der Lösungen für allgemeine Linux-Probleme

1. Centos7 unter VMware verbinden und eine feste ...

5 einfache XHTML-Webformulare für Webdesign

Einfaches XHTML-Webformular im Webdesign 5. Techn...

Nodejs konvertiert JSON-String in JSON-Objekt-Fehlerlösung

Wie konvertiere ich eine JSON-Zeichenfolge in ein...

Detaillierte Erklärung der MySQL-Syntax, Sonderzeichen und regulären Ausdrücke

Häufig verwendete Anzeigebefehle für MySQL 1. Zei...

Detailliertes Beispiel für die Verwendung von MySQL-Triggern

Details zur MySQL-Triggersyntax: Ein Trigger ist ...

Detaillierte Erklärung von Softlinks und Hardlinks in Linux

Inhaltsverzeichnis 1. Grundlegende Speicherung vo...

Webseiten-Erlebnis: Farbabstimmung für Webseiten

<br />Die Farbe einer Webseite ist entscheid...