- dog-rescuer (acts as a kafka producer)
- dog-adoption-center (acts as a kafka consumer)
- Dog-rescuer service creates a Dog POJO using java-faker and produces the created object to a Kafka topic (rescued-dogs-delivery) after every 2 minutes.
- Dog-adoption-center consumes the messages from the Kafka topic, parses it and saves it to it's in-memory DB.
- Dog-adoptiion-center exposes GET /dogs API to retreive all rescued dog records
- Install Java 17 (recommended to use SdkMan)
sdk install java 17-open
- Install Maven (recommended to use SdkMan)
sdk install maven
- Clone the repo
git clone https://github.com/hardikSinghBehl/kafka-java-spring-boot-poc.git
- Run the below command inside both services
mvn clean install
- Run the below commands to start docker containers
sudo docker-compose build
sudo docker-compose up -d
- Run the below command to stop docker containers
sudo docker-compose down