The project demonstrates how to build a Resilient Distributed System which contains a set of microservices.
In order to demonstrate how to:
- Implement microservices which communicate using HTTP/REST protocol
- Implement patterns for resilient distributed systems such as: API Gateway, Service Discovery, Circuit Breaker etc
The following technologies are used:
- Spring Boot is used for implementing microservices
- Netflix Zuul is used for implementing Api Gateway
- Netflix Eureka is used for implementing Service Discovery
- Netflix Hystrix is used for implementing Circuit Breaker
In order to startup the whole system, you need to execute the following commands for each microservice:
maven clean packagecreates an executable jar using spring-boot-maven-pluginjava -jar target/*.jarruns an application
All registered microservices are available in Eureka's admin area http://localhost:8761/
All mapped routes are available via specific Zuul end-point http://localhost:8080/routes
