Skip to content

Microservices based solution focusing on Clean Architecture, Event Driven Architecture, following Api Gateway, Aggregator, CQRS and MediatR patterns along with inter-services synchronous communication, inter-services asynchronous communication.

License

Notifications You must be signed in to change notification settings

AmanpreetSingh-GitHub/Microservices-based-solution

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Microservices Architecture


Solution Architecture



Technologies used in the solution


Sample e-commerce solution uses a host of technologies to create multiple microservices along with inter-services synchronous communication, inter-services asynchronous communication, Clean Architecture, Event Driven Architecture using Message Broker, following Api Gateway, Aggregator, CQRS and MediatR patterns.

Below are the detailed technologies used in the solution -

  • .Net Core
  • Docker
  • Ocelot Api Gateway
  • MongoDB
  • Redis Cache
  • PostgreSQL
  • SQL Server
  • RabbitMQ
  • MassTransit
  • gRPC
  • RESTful Api
  • Message Broker
  • MediatR
  • Dapper
  • Entity Framework Core
  • Microservices Architecture
  • Event Driven Architecture
  • CQRS pattern (Command and Query Responsibility Segregation)
  • Mediator pattern

Microservices created as part of e-commerce solution


  • Catalog microservice
    • Uses containerized MongoDB image
  • Basket microservice
    • Uses containerized Redis Cache image
    • Calls Discount microservice for inter-service synchronous gRPC communication
    • Uses RabbitMQ and MassTransit for inter-service asynchronous communication to communicate with Ordering microservice
  • Discount microservice
    • Uses containerized PostgreSQL image
    • Called by Basket microservice for inter-service synchronous gRPC communication
  • Ordering microservice
    • Uses containerized SQL Server image
    • Uses RabbitMQ and MassTransit for inter-service asynchronous communication to communicate with Basket microservice
  • Ocelot API Gateway microservice
    • Implements Api Gateway pattern for all communication between Catalog/Basket/Ordering microservices and outside world
  • Shopping.Aggregator microservice
    • Implements Gateway Aggregator pattern that aggregate calls to multiple microservices like Catalog/Basket/Ordering
  • ShoppingWebApp
    • Implements the front-end client application
    • Interacts with Ocelot Api Gateway for communicating with microservices

References


About

Microservices based solution focusing on Clean Architecture, Event Driven Architecture, following Api Gateway, Aggregator, CQRS and MediatR patterns along with inter-services synchronous communication, inter-services asynchronous communication.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages