Skip to content

Dockerized Choreography-based Saga Example Project with Onion Architecture. Includes Order, Stock and Payment microservices.

License

Notifications You must be signed in to change notification settings

ataberkdag/ChoreographyBasedSagaExample

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Choreography-based Saga Example Project

Dockerized Choreography-based Saga Example Project with Onion Architecture. Includes Order, Stock and Payment microservices.

Order.API

General

  • Publisher and Consumer. (Publish to StockAPI. Consumes from StockAPI and PaymentAPI.)

  • RabbitMQ with MassTransit

  • EntityFramework Core - PostgreSQL

  • Mediator Pattern

  • Repository Pattern

  • Unit of Work Pattern

  • Dockerized

Events

Publish
  • OrderCreatedEvent
Consume
  • StockNotReservedEvent

  • PaymentFailedEvent

Stock.API

General

  • Publisher and Consumer. (Publish to PaymentAPI. Consumes from OrderAPI and PaymentAPI.)

  • RabbitMQ with MassTransit

  • EntityFramework Core - PostgreSQL

  • Mediator Pattern

  • Repository Pattern

  • Unit of Work Pattern

  • Dockerized

Events

Publish
  • StockReservedEvent

  • StockNotReservedEvent

Consume
  • OrderCreatedEvent

  • PaymentFailedEvent

Payment.API

Receives successful stock message.

General

  • Publisher and Consumer. (Publish event. Consumes from StockAPI.)

  • RabbitMQ with MassTransit

  • Mediator Pattern

  • Dockerized

Events

Publish
  • PaymentSucceededEvent

  • PaymentFailedEvent

Consume
  • StockReservedEvent

Run with Docker

docker-compose -f docker-compose.yml up -d

Migration

To apply migrations follow this command on Package Manager Console for Order and Stock Microservices. (Set starting project to API and set default project to Infrastructure on Package Manager Console)

update-database

License

MIT

About

Dockerized Choreography-based Saga Example Project with Onion Architecture. Includes Order, Stock and Payment microservices.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published