Este proyecto está diseñado para demostrar la implementación de microservicios en Java utilizando el framework Spring, junto con varias herramientas y bibliotecas para mejorar la resiliencia, la escalabilidad y la eficiencia del sistema. El proyecto utiliza las siguientes tecnologías:
-
Resilience4j: Una biblioteca de tolerancia a fallos para Java que ayuda a controlar el comportamiento de los sistemas distribuidos.
-
Eureka: Un servicio de registro y descubrimiento para microservicios en la nube.
-
Config Server: Un servidor de configuración para distribuir la configuración de los microservicios de forma centralizada.
-
Circuit Breaker: Un patrón de diseño para mejorar la resiliencia y el rendimiento de sistemas distribuidos.
-
Load Balancer: Un componente para distribuir la carga de manera equitativa entre los diferentes servidores o instancias de un microservicio.
-
Gateway: Un punto de entrada para todas las solicitudes del cliente, que dirige el tráfico a los microservicios correspondientes.
- Aplicar Spring Security en Microservicios.
- Aplicar seguridad en API-Gateway
- Impelementar mensajeria (RabbitMQ - Kafka - ActiveMQ)
- Aplicar trazabilidad a los microservicios (Zipkin y Sleuth)
¡Las contribuciones son bienvenidas! Si encuentra errores o desea mejorar este proyecto, no dude en abrir un issue o enviar un pull request.