Proyecto demo sobre uso de kafka en una aplicación SpringBoot
SpringBoot 2.0 && KaaS (https://www.cloudkarafka.com/)
En este ejemplo tenemos una aplicación SpringBoot con un Consumer y un Producer sobre topic Kafka en CloudKarafka.
- Registro en CloudKarafka
- Maven
- Java 8
- Docker (Si quieres ejecutarlo en un Docker)
En el aplication.yml debemos indicar los brokers, el topic, username y password
kafka:
brokers:
url: XXX
cloudkarafka:
topic: XXX
username: XXX
password: XXX
En Docker(si lo quieres ejecutar en Docker):
$ mvn install dockerfile:build
$ docker run -p 8080:8080 -t springio/kafkademo
En Maven:
$ mvn clean install
$ java -jar ./target/kafkademo-0.0.1-SNAPSHOT.jar
Para producir un mensaje, en un navegador usando la url
http://localhost:8080/kafka/producer?data=Mensaje
El puerto por defecto es el 8080 si es diferente, cambiarlo, el mensaje a enviar sera el string que tenga la variable data
En otro navegador por medio de la siguiente url veremos todos los mensajes que se envien al topic.
http://localhost:8080/kafka/consumer