From: Kai Moritz Date: Fri, 19 Aug 2022 14:17:35 +0000 (+0200) Subject: Compose-Setup und Vorführ-Skript an die Übung angepasst X-Git-Tag: sumup-adder---lvm-2-tage~7^2~3 X-Git-Url: http://juplo.de/gitweb/?a=commitdiff_plain;h=a22627477d23328b168e06cac2a807db1f1145f2;p=demos%2Fkafka%2Ftraining Compose-Setup und Vorführ-Skript an die Übung angepasst * Die Mongo-DB muss vor dem Neu-Start gelöscht werden, da sie sonst noch den alten Zustand enthält. * Außerdem muss der `adder`-Service dabei gestoppt sein, da er sonst den alten Zustand sofort neu anlegt, wenn die frisch erzeugte leere Mongo-DB erreichbar wird. * Das Skript außerdem weniger, timing-anfällig gemacht, indem es wartet, bis der Zustand für den im Skript benutzten User sichtbar wird. * Das Skript fasst das ausgegebene JSON außerdem mit `jq` und `uniq` so zusammen, dass sofort erkennbar ist, ob es zu falschen Berechnungen gekommen ist. * Der im Skript benutzte User `peter` wartet jetzt zwischen den Berechnungs-Anfragen nicht mehr und stellt größere Anfragen, damit es sicherer zu falschen Berechnungen kommt -- (sonst kam es dazu, dass der Consumer eh die letzte Berechnung vollständig ausgeführt hatte und dann auf weitere Nachrichten gewartet und einen Commit gemacht hatte, bevor er abgeschossen wurde, so dass alle Berechnungen vollständig waren) * Der Auto-Commit von Kafka wurde auf 3 Sekunden verkürzt, und das Skript an diese Zeit angepasst, so dass auf jeden Fall ein Commit erfolgt ist, bevor der Consumer getötet wird. --- diff --git a/README.sh b/README.sh index 05178a3..e772144 100755 --- a/README.sh +++ b/README.sh @@ -9,6 +9,8 @@ then exit fi +docker-compose stop adder +docker-compose rm -svf mongo docker-compose up -d zookeeper kafka-1 kafka-2 kafka-3 cli mongo express if [[ @@ -17,7 +19,7 @@ if [[ ]] then docker-compose rm -svf adder - mvn clean install || exit + mvn -D skipTests clean install || exit else echo "Using image existing images:" docker image ls $IMAGE @@ -32,15 +34,17 @@ while ! [[ $(http 0:8080/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Wait while ! [[ $(http 0:8081/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for requests..."; sleep 1; done while ! [[ $(http 0:8082/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for adder..."; sleep 1; done -docker-compose up -d peter ute franz beate klaus uschi +docker-compose up -d peter +while [[ "$(http :8082/results | jq -r .)" == "{}" ]]; do echo "Waiting for some results to show up..."; done http -v :8082/results sleep 3 http -v :8082/results - +http :8082/results/peter | jq .[].sum | uniq docker-compose kill -s 9 adder docker-compose up -d adder -sleep 3 -docker-compose kill -s 9 peter ute franz beate klaus uschi -http -v :8082/results +docker-compose kill -s 9 peter +while ! [[ $(http 0:8082/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for adder..."; sleep 1; done +while [[ "$(http :8082/results | jq -r .)" == "{}" ]]; do echo "Waiting for some results to show up..."; sleep 1; done +http :8082/results/peter | jq .[].sum | uniq diff --git a/docker-compose.yml b/docker-compose.yml index ba2566e..0d61e12 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -122,8 +122,10 @@ services: server.port: 8080 sumup.adder.bootstrap-server: kafka:9092 sumup.adder.client-id: adder + sumup.adder.commit-interval: 3s spring.data.mongodb.uri: mongodb://juplo:training@mongo:27017 spring.data.mongodb.database: juplo + logging.level.org.apache.kafka.clients.consumer: DEBUG peter: image: juplo/toolbox @@ -131,8 +133,7 @@ services: bash -c " while [[ true ]]; do - echo 666 | http -v gateway:8080/peter; - sleep 1; + echo 6666 | http -v gateway:8080/peter; done " ute: