> When people say “exactly once” is impossible they really mean in the face of failure at the queue level.
And what exactly is impossible with that? Just wait it out, i.e. like all the CP systems do (as per CAP).
And what exactly is impossible with that? Just wait it out, i.e. like all the CP systems do (as per CAP).
Note none of this is rigorously defined either in the article or with most message queues and the configuration of queues/brokers/clients means that there are all manner of edge cases around delivery guarantees in practice.
As an example, imagine a system sending a million 1 KB messages per second. To survive a 1 minute network outage it would need 60 GB extra storage to park the messages. If the outage lasts longer than it has space available, dropping messages becomes inevitable.