CONCLUÍDO - Estudo sobre Microservices, com Spring Cloud.
- Spring Cloud Configuration (Archaius) e Spring Actuator
Criando Config Server e Service Greeting.
Config server para guardar info do servidor como os application.yml, Cloud Server e Client.
- Microservices com Feign
Criando os Services Cambio e Book.
Dois services de exemplos com comunicação entre eles por Feign.
- Eureka
Criando o Service Registry/Discovery ou Naming Server.
Armazenar, localizar e distribuir serviços de URL, Port, Host e etc.
- Load Balancer
Criando com Eureka, Feign e Spring Cloud Load Balancer.
Balanceamento de carga entre os services.
- API Gateway
Criando RouterLocator e Filters em Gateways.
Configuração das rotas dos services.
- Resilience4j
Criando Retry (Wait Duration e Exponencial Backoff), Fallback Methods, Circuit Breaker, Rate Limit e Bulkhead.
Resilience4j é uma biblioteca leve de tolerância a falhas; quando um service está off ou com lentidão.
- Loggar Distributed Tracing
Loggando as request dos services com RabbitMQ, Zipkin e Slueth.
Rastreamento entre as requisições, para medir o tempo dos services para executar ações das request.
Run via container do Docker
docker run -p 9411:9411 openzipkin/zipkin:2.23.2