e-shop system based on microservice architecture and ddd using asp.net core
MIT License
This is step-by-step development of reference microservices architecture ensuring that high-scale and high-availability services using .NET 8. There is a couple of microservices which implemented E-Commerce Microservices, those are Catalog, Basket, Discount, Ordering, YarpApiGateway microservices and Shopping.Web Client Application. These microservices data's will store NoSQL and Relational databases with communicating over gRPC and RabbitMQ Event Driven Communication and also using Yarp API Gateway for client operations.
๐น๐๐๐ญ๐๐ฅ๐จ๐ ๐๐ข๐๐ซ๐จ๐ฌ๐๐ซ๐ฏ๐ข๐๐ Using ASP.NET Core Minimal APIs Vertical Slice Architecture implementation with Feature folders CQRS implementation using MediatR library with Pipeline Behaviors Use Marten library for .NET Transactional Document DB on PostgreSQL
๐น๐๐ฎ๐๐ธ๐ฒ๐ ๐ ๐ถ๐ฐ๐ฟ๐ผ๐๐ฒ๐ฟ๐๐ถ๐ฐ๐ฒ Using Redis as a Distributed Cache over basketdb Implements Proxy, Decorator and Cache-aside patterns Consume Discount Grpc Service for inter-service sync communication to calculate product final price Publish BasketCheckout Queue with using MassTransit and RabbitMQ
๐น๐๐ถ๐๐ฐ๐ผ๐๐ป๐ ๐บ๐ถ๐ฐ๐ฟ๐ผ๐๐ฒ๐ฟ๐๐ถ๐ฐ๐ฒ Exposing Grpc Services with creating Protobuf messages SQLite database connection and containerization N-Layer Architecture implementation
๐น๐ข๐ฟ๐ฑ๐ฒ๐ฟ๐ถ๐ป๐ด ๐ ๐ถ๐ฐ๐ฟ๐ผ๐๐ฒ๐ฟ๐๐ถ๐ฐ๐ฒ Implementing DDD, CQRS, and Clean Architecture with using Best Practices Raise and Handle Domain Events & Integration Events Entity Framework Core Code-First Approach, Migrations Consuming RabbitMQ BasketCheckout event queue with using MassTransit-RabbitMQ Configuration