2 ms·
Well, you have have exactly-once delivery unless there are network partitions, which is not a particularly surprising limitation. As the author admits, it takes
by brianpgordon 12y ago
Well, you have have exactly-once delivery unless there are network partitions, which is not a particularly surprising limitation. As the author admits, it takes considerable cleverness in the implementation details in order to achieve that abstraction, but plenty of tools have done it.
"People often bend the meaning of “delivery” in order to make their system fit the semantics of exactly-once, or in other cases, the term is overloaded to mean something entirely different. State-machine replication is a good example of this. Atomic broadcast protocols ensure messages are delivered reliably and in order. The truth is, we can’t deliver messages reliably and in order in the face of network partitions and crashes without a high degree of coordination. This coordination, of course, comes at a cost (latency and availability), while still relying on at-least-once semantics."
This reminds me of the problem of reliable data transfer over an unreliable network. It's theoretically impossible, but TCP is still a practical, useful abstraction.
- Gurkenmaster 12y ago>Well, you have have exactly-once delivery Is this intentional?