Skip to content

PhucHau0310/MicroservicesECommerce

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

4 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ Microservices E-Commerce

πŸ“‹ Overview

The Microservices E-Commerce project is an e-commerce system built on a microservices architecture. Each service performs a specific function and communicates with each other via protocols such as HTTP, gRPC, or message queues. The project is designed to be easy to extend, maintain, and deploy.

⭐ Features

  • 🌐 ApiGateway: Main communication gateway between clients and services using Ocelot
  • πŸ“Š ElasticStack: Logging and monitoring support with ELK stack
  • πŸ“ˆ Monitoring: System monitoring configuration with Prometheus and Grafana
  • πŸ”§ Services:
    • πŸ” AuthService: User authentication and authorization management
    • πŸ›’ CartService: Shopping cart management
    • πŸ“¨ NotificationService: Notification handling via Redis and RabbitMQ
    • πŸ“¦ OrderService: Order management
    • πŸ’³ PaymentService: Payment processing via VNPay and other methods
    • πŸ“ ProductService: Product and inventory management
    • ⭐ ReviewService: Product review management
  • πŸ”„ Shared: Common libraries including JWT configuration, middleware, and utilities

πŸ“Έ System Screenshots

1. System Monitoring with cAdvisor

cAdvisor

2. Grafana Monitoring Dashboard

Grafana Dashboard 1 Grafana Dashboard 2

3. Kibana Logging

Kibana

4. Prometheus Metrics

Prometheus

πŸ› οΈ Technology Stack

  • πŸ’» Language: C#
  • ⚑ Framework: .NET 9.0
  • πŸ—„οΈ Databases:
    • PostgreSQL (PaymentService)
    • MongoDB (OrderService, NotificationService, ReviewService)
    • SQL Server (AuthService, ProductService)
  • πŸ“¬ Message Queue: RabbitMQ
  • ⚑ Caching: Redis
  • πŸ“Š Logging & Monitoring: ELK Stack, Prometheus, Grafana
  • 🌐 API Gateway: Ocelot

πŸ“₯ Installation Guide

System Requirements

  • Docker and Docker Compose
  • .NET SDK 9.0
  • PostgreSQL, MongoDB, Redis, RabbitMQ

Getting Started

  1. Clone repository:
    git clone https://github.com/PhucHau0310/MicroservicesECommerce.git
    cd MicroservicesECommerce/be
  2. Run Docker Compose:
    docker-compose up --build

πŸ“ž Contact

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

🀝 Contributing

Contributions, issues, and feature requests are welcome! Feel free to check issues page.

About

The Microservices E-Commerce project is an e-commerce system built on a microservices architecture.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published