Demo of working Spring Boot microservices with Consul cluster, for service discovering, and Traefik for external automatic and dynamic routing and load balancing.
- Build project
mvn clean package
- Run Consul cluster and Traefik
docker-compose up -d
- Run microservices (two instances per service)
docker-compose -f services-compose.yml up -d --scale first-service=2 --scale second-service=2 --build
- Watch how they 'talk' with each other:
docker-compose -f services-compose.yml logs -f
- Run external requests
- manually:
curl 'http://localhost/demo/one'
curl 'http://localhost/demo/two'
- or with k6
k6 run src/test/js/load-test.js --duration 1m
Then watch reflection of their work in the logs.
- Stop the environment
docker-compose -f services-compose.yml down
docker-compose down