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)