7 Comments
User's avatar
Petar Ivanov's avatar

Idempotency is crucial in distributed systems, especially the ones with payments.

Great article, Raul! And thank you so much for the mention! 🙏

Expand full comment
Jack Daniels's avatar

Brilliant article! I have two questions:

1. Queues like Kafka and NATS have internal storage/streams to keep events that have not been processed yet. So, it seems like they could guarantee reliability.

2. Who writes to the inbox table? Is it a service that accepts the events? Does it listen to events and save them into the inbox?

Expand full comment
Saurabh Dashora's avatar

Very nice post Raul.

Makes the whole flow clear in terms of sending messages reliably plus receiving as well.

Also, thanks for the mention!

Expand full comment
Shaun's avatar

Really clear, thnx for your contribution!

Expand full comment
Alikhan Sharapat's avatar

Thanks!

Expand full comment
Prajyot Prabhu's avatar

You have to also mention about the acknowledgement event after consumption of the message. This ack will update a flag in the outbox table to make sure, the operation is complete.

Expand full comment
Neo Kim's avatar

nicely explained + visuals make it easier to understand. Good work, Raul.

Expand full comment