Achieved as part of a set of Microservices Projects Master’s degree of Information Systems and Intelligent Systems M2SI. As part of this project, we were asked to design and implement an application respecting the microservices architecture with Spring Boot framework. There are several microservices that help to achieve this e-commerce process, for example, managing products, customers, auth and security etc. As well as the connections established between them, with Remote Procedure Invocation calls, to facilitate the task, without forgetting the different Design Patterns that we used :
- Service discovery (Eureka Server)
- Timeouts
- Circuit breaker (Hystrix)
- Database per service (MongoDB, MySQL...)
- Remote procedure Invocation(RestTemplate)
- Service per team
- Access token(JWT)
- Api gateway (Zuul)
- Load balancing