This project implements a distributed architecture based on microservices using Spring Boot 3 and Spring Cloud.
It is designed to demonstrate best practices in backend development, scalability, security, and traceability, integrating multiple components of the cloud-native ecosystem.
- Spring Boot 3, Spring Cloud Gateway, Eureka Server
- Spring Cloud Config Server, Spring Cloud LoadBalancer
- OAuth2.1, JWT, Spring Security
- Micrometer Tracing, Zipkin
- Spring Data JPA, Hibernate, MySQL 8
- WebClient, Feign
- Docker, Docker Compose
- AWS
eureka-server: Service registry and discoveryconfig-server: Centralized configurationmsvc-gateway-server: API Gateway with OAuth2 securitymsvc-products: Product managementmsvc-users: User managementmsvc-oauth: Authentication servicelibs-msvc-commons: Shared librarieszipkin: Distributed tracingdocker-compose: Service orchestration
- Inter-service communication via REST
- Dynamic load balancing
- Fault tolerance with Resilience4J
- Centralized security at the API Gateway
- Externalized and versioned configuration
- Distributed tracing with Zipkin
- Full containerization with Docker
- Ready for deployment on AWS EC2
docker-compose up --buildFreyder Otalvaro
Senior Java Developer | AWS Learner
GitHub
Colombia 🇨🇴