A practical e-commerce platform built with Spring frameworks, Kubernetes, Terraform and deployed on AWS EKS. The project demonstrates microservice patterns and cloud-native capabilities with a focus on scalability, security, resiliency, observability, infrastructure automation, and deployment strategies.
Architecture
The platform is composed of 5 core microservices — Customer, Product, Order, Payment, and Notification — communicating via REST (OpenFeign) and asynchronous messaging (RabbitMQ).
Features
- Service Discovery with Netflix Eureka
- API Gateway with Spring Cloud Gateway (load balancing, rate limiting)
- Event-Driven Architecture with RabbitMQ (AMQP)
- Distributed Tracing with Sleuth & Zipkin
- Security with API Key Manager & OAuth2/Keycloak
- Resiliency with Resilience4j (circuit breaker, fallback, rate limiting)
- Monitoring with Prometheus & Grafana
- Email Notifications with AWS SES
- Infrastructure as Code with Terraform
- Automated Deployment with Skaffold & Jib
- CQRS Pattern with denormalized read model in Order Service
- Deployment Strategies — Blue/Green, Rolling Update, Canary
- Database per Service pattern with PostgreSQL
Cloud-Native Deployment
The platform supports multiple deployment targets:
- Docker Compose for local development
- Kubernetes for container orchestration
- AWS EKS for production cloud deployment
- Terraform for provisioning cloud infrastructure
- Skaffold for continuous development on K8s
- GitHub Actions for CI/CD pipelines




