Merge der überarbeiteten Compose-Konfiguration ('setup-partitionierung') round-robin
authorKai Moritz <kai@juplo.de>
Sat, 23 Jul 2022 10:48:22 +0000 (12:48 +0200)
committerKai Moritz <kai@juplo.de>
Sat, 23 Jul 2022 10:52:41 +0000 (12:52 +0200)
* Diese Übung war zuvor noch nicht auf den letzten Stand (gemeinsames
  Basis-Setup 'setup-partitionierung' angehoben worden.
* Hintergrund: `RoundRobinPartitioner` ist veraltet!

README.sh
docker-compose.yml
pom.xml
src/main/java/de/juplo/kafka/EndlessProducer.java

index 3ec2781..f00b917 100755 (executable)
--- a/README.sh
+++ b/README.sh
@@ -1,6 +1,6 @@
 #!/bin/bash
 
-IMAGE=juplo/endless-producer:1.0-SNAPSHOT
+IMAGE=juplo/round-robin:1.0-SNAPSHOT
 
 if [ "$1" = "cleanup" ]
 then
@@ -38,13 +38,13 @@ EOF
 docker-compose up -d producer consumer
 
 sleep 10
-http :8081/seen
+http -v :8081/seen
 sleep 1
-http :8081/seen
+http -v :8081/seen
 sleep 1
-http :8081/seen
+http -v :8081/seen
 sleep 1
-http :8081/seen
+http -v :8081/seen
 
 docker-compose exec -T cli bash << 'EOF'
 echo "Altering number of partitions from 3 to 7..."
@@ -55,36 +55,36 @@ kafka-topics --bootstrap-server kafka:9092 --describe --topic test
 EOF
 
 sleep 1
-http :8081/seen
+http -v :8081/seen
 sleep 1
-http :8081/seen
+http -v :8081/seen
 sleep 1
-http :8081/seen
+http -v :8081/seen
 sleep 1
-http :8081/seen
+http -v :8081/seen
 sleep 1
-http :8081/seen
+http -v :8081/seen
 sleep 1
-http :8081/seen
+http -v :8081/seen
 
-http post :8081/stop
-http post :8081/start
+http -v post :8081/stop
+http -v post :8081/start
 
 sleep 1
-http :8081/seen
+http -v :8081/seen
 sleep 1
-http :8081/seen
+http -v :8081/seen
 sleep 1
-http :8081/seen
+http -v :8081/seen
 sleep 1
-http :8081/seen
+http -v :8081/seen
 sleep 1
-http :8081/seen
+http -v :8081/seen
 sleep 1
-http :8081/seen
+http -v :8081/seen
 sleep 1
-http :8081/seen
+http -v :8081/seen
 sleep 1
-http :8081/seen
+http -v :8081/seen
 
 docker-compose stop producer consumer
index de99240..4ace0e1 100644 (file)
@@ -37,7 +37,7 @@ services:
     command: sleep infinity
 
   producer:
-    image: juplo/endless-producer:1.0-SNAPSHOT
+    image: juplo/round-robin:1.0-SNAPSHOT
     ports:
       - 8000:8080
     environment:
@@ -49,7 +49,7 @@ services:
 
 
   consumer:
-    image: juplo/counting-consumer:1.0-SNAPSHOT
+    image: juplo/endless-consumer:1.0-SNAPSHOT
     ports:
       - 8081:8080
     environment:
diff --git a/pom.xml b/pom.xml
index af4a89f..afacc01 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -12,8 +12,8 @@
   </parent>
 
   <groupId>de.juplo.kafka</groupId>
-  <artifactId>endless-producer</artifactId>
-  <name>Endless Producer: a Simple Producer that endlessly writes numbers into a topic</name>
+  <artifactId>round-robin</artifactId>
+  <name>Round Robin: a version of the Endless Producer, that uses round robin for partitioning</name>
   <version>1.0-SNAPSHOT</version>
 
   <dependencies>
index 8b3743d..fcf42de 100644 (file)
@@ -42,6 +42,7 @@ public class EndlessProducer implements Runnable
     props.put("client.id", clientId);
     props.put("acks", acks);
     props.put("metadata.max.age.ms", "1000");
+    props.put("partitioner.class", "org.apache.kafka.clients.producer.RoundRobinPartitioner");
     props.put("key.serializer", StringSerializer.class.getName());
     props.put("value.serializer", StringSerializer.class.getName());