Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/felixojiambo/microservices_referenceapplication
This project serves as a valuable reference for implementing microservices principles in an enterprise level applications in e-commerce.
https://github.com/felixojiambo/microservices_referenceapplication
eureka kafka keycloak spring-cloud-config spring-cloud-gateway zipkin
Last synced: 16 days ago
JSON representation
This project serves as a valuable reference for implementing microservices principles in an enterprise level applications in e-commerce.
- Host: GitHub
- URL: https://github.com/felixojiambo/microservices_referenceapplication
- Owner: felixojiambo
- Created: 2024-06-08T17:03:14.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-12-31T19:45:12.000Z (17 days ago)
- Last Synced: 2024-12-31T20:29:15.621Z (17 days ago)
- Topics: eureka, kafka, keycloak, spring-cloud-config, spring-cloud-gateway, zipkin
- Language: Java
- Homepage:
- Size: 183 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# E-commerce Microservices Application - README
## Introduction
This project is an e-commerce application built using a microservices architecture. The application is designed to be scalable, maintainable, and secure.
## Setup Guide
### Prerequisites
- Docker
- Java (JDK 11+)
- Maven### Steps to Run the Application
1. **Clone the Repository:**
```bash
git clone https://github.com/fojiamboe/java-ecom.git
cd java-ecom
```2. **Build the Projects:**
```bash
mvn clean install
```3. **Run Docker Compose:**
```bash
docker-compose up
```### Services
1. **Configuration Server:**
- Manages configurations centrally.2. **Discovery Server:**
- Service registration and discovery.3. **Customer Microservice:**
- Manages customer information.4. **Product Microservice:**
- Manages product catalog.5. **Order Microservice:**
- Handles order processing.6. **Payment Microservice:**
- Manages payments.7. **Notification Microservice:**
- Handles notifications.8. **API Gateway:**
- Routes requests to appropriate microservices.### Tools and Technologies
- **Kafka and Zookeeper:**
- For asynchronous communication.- **Zipkin:**
- Distributed tracing.- **Keycloak:**
- Security and authentication.## Testing the Application
- Ensure all microservices are up and running.
- Access the API Gateway to interact with the services.
- Use provided test data and scripts to validate functionalities.## Monitoring and Security
- Use Zipkin for monitoring application logs and tracing requests.
- Keycloak is set up for security, including creating realms and clients for authentication.