- Using
Outbox Patternfor ensuring that a message was sent (e.g. to a queue) successfully at least once. With this pattern, instead of directly publishing a message to the queue, We put it in the temporary storage (e.g. database table) for preventing missing any message and some retry mechanism in any failure (At-least-once Delivery). - Using
Internal Command ProcessorFor syncing Read Side and Write Side without event sourcing in MongoDB or other read database.
More details in this PR #16