maestre3d / alexandria

The Alexandria Project is an open-source platform where people can share their knowledge through books, podcasts, docs and videos.
https://alexandria.damascus-engineering.com
GNU Affero General Public License v3.0
9 stars 1 forks source link

Add Create Media Saga transaction #21

Closed maestre3d closed 4 years ago

maestre3d commented 4 years ago

Is your feature request related to a problem? Please describe. No.

Describe the solution you'd like Currently, we're using a non-transaction approach when creating a new media entity, yet it's a must to do a saga-like transaction to validate media's user ID and author ID.

Describe alternatives you've considered A saga transaction using the message broker in turn with help of domain and integration events.

Additional context Here's a saga's explanation

maestre3d commented 4 years ago

Added Apache Kafka to author domain events, now migrating media service's event bus to Kafka.

maestre3d commented 4 years ago

Currently working on author service event bus, will migrate media afterwards.

maestre3d commented 4 years ago

Author service has implemented SAGA transactions successfully, now working on media service

maestre3d commented 4 years ago

Media has all the required validation as SAGA transactions, closing