This project is a simple e-commerce application built using a microservices architecture. It leverages Spring Boot and Spring Cloud to provide a scalable and maintainable solution. The application consists of multiple services, each responsible for a specific domain, and is organized as a polyrepo.
The application is composed of the following microservices:
- Config Server:
Centralized configuration management for all services. - Service Discovery:
Service discovery for dynamic scaling and fault tolerance, set up using Consul. - API Gateway:
Entry point for all client requests, routing them to the appropriate services. - User Service:
Manages user registration, authentication, and profile management. - Product Service:
Handles product catalog management, including product details and inventory. - Order Service:
Manages order creation, processing, and tracking. (working) - Rating and Review Service:
Allows users to rate and review products. (working)
- Java 17
- Spring Boot 3.4.x
- Spring Cloud
- Spring Data JPA
- MySQL
- Redis
- Hashicorp Consul (Service Discovery)
- Spring Cloud Config
- Spring Cloud Gateway
- OpenFeign
- Lombok
- Maven
- Java 17 (only)
- Maven (any latest version)
- MySQL database
- Redis
- Hashicorp Consul installed (for service discovery)
-
Clone the repository:
git clone https://github.com/rajumb0232/E-Commerce-Microservice.git