The purpose of this project is to demonstrate the usage of spring cloud stack and some of the microservices patterns
| Component | Port | Purpose |
|---|---|---|
| config-server | 8888 | Serves configuration stored on git repository to all services |
| eureka-server | 8761 | Service Discovery, dinamically add/register new containers |
| zuul-server | 8765 | Server as a single entrypoint for all microservices, centralizes authentication |
| uaa-server | 9999 | Authorization server that issues JWT tokens |
| zipkin-server | 9411 | Distributed Tracing, tracks the microservices requests to other microservices, show failures between requests |
| zipkin-ui | 80 | UI for zipkin service |
| kafka-zookeeper | 9092 | Serves as a buffer for the zipkin server, the microservices pushes/produces the events to kafka stream and zipkin consumes the stream of events and persists to elasticsearch |
| elasticsearch | 9200 | Storage for zipkin server |
| users-service | 8001 | Manages User entity |
| boards-service | 8002 | Manages Board entity |
| quivers-service | 8003 | Manages Quiver entity |
- Master Microservices with Spring Boot and Spring Cloud
- A Guide to Spring Cloud Netflix – Hystrix
- Hystrix CircuitBreaker and Feign
- Zipkin docker github
- Monitoring Microservices With Spring Cloud Sleuth, ELK, and Zipkin
- Linkedin Learning - Spring: Spring Cloud
- Using JHipster UAA for Microservice Security
- Handle Security in Zuul, with OAuth2 and JWT
- Creating Self-Signed Certificate
- Spring Microservices in Action
- Building Microservices: Designing Fine-Grained Systems
- Microservices Patterns: With examples in Java
- A pattern language for microservices
- Centralized Authorization with OAuth2 + JWT using Spring Boot 2
- Microservices with Spring Boot and Spring Cloud. From config server to OAuth2 server (without inMemory things)