#kafka-simple-demo
This project is used to create a continuous stream of mock data that simulates, in a very simple way, quote prices from the stock market, the main goal here is not focus on accurace regarding the domain of the securities market that is very complex, it's on kafka, please check this post for further details.
Uses:
- Kafka 0.10.2(soon will be updated to kafka 1.0 just released)
- Spring boot
- Java 8
- Docker CE
- Docker compose
- Kafka consumer, producer and streams.
To run the application you'll need a local accessible kafka. I prefer to run it with docker-compose(currently docker-compose version 1.16.1, build 6d1ac21 ) and this is the one I've used during development.
Set your hosts to resolve the name of the kafka containers to your localhost if you're running this application from source code, this is required because of how kafka resolves it's producer address internally on the docker network and your localhost network. If you're running this application including the mockstocks application inside a docker container then kafka should already resolve correctly.
Start all containers in background:
docker-compose up -d
Attach terminal to docker logs and follow(tail):
docker-compose logs -f
Once it's up you can check the container list with docker ps
This project has integration with jacoco to generate code coverage and quality
reports.
Once you run mvn test
surefire reports will be generated in the target folder.
In order to see this reports there's a sonarqube default docker-compose
available under src/main/docker that can be used to see the results.
- Start the docker container with sonarqube, from docker folder
docker-compsoe up -d
- Export results to sonarqube:
mvn sonar:sonar
- Open localhost:9000 and you should see sonarqube dashboard that you can navigate