Message Delivery Guarantees
Explore the key message delivery guarantees available in event-driven architectures, including at-most-once, at-least-once, and exactly-once delivery. Understand their trade-offs, implementation challenges, and when to apply each model for reliable asynchronous communication in Golang.
We'll cover the following...
Event-driven architectures (EDAs) can be built around different levels of delivery guarantees. There are three possible options, and all three can be available depending on the broker or libraries we use.
At-most-once message delivery
The producer does not wait for an acknowledgment from the message broker when it publishes a message under the at-most-once delivery model, as depicted in the following diagram:
Message deduplication and idempotency are not concerns. However, the possibility that the message never arrives is very real. In addition to the ...