5 ms·
But that wouldn't work which is the problem. If someone named Bob was standing outside your yard discarding the 99 pizzas, then Bob would not be able to guaran
by Maxatar 2y ago
But that wouldn't work which is the problem.
If someone named Bob was standing outside your yard discarding the 99 pizzas, then Bob would not be able to guarantee that you actually get exactly one pizza. It's possible that the one pizza Bob tries to give you gets rained on before Bob can actually hand it to you.
Only you yourself can actually implement a means of discarding extraneous pizzas, any middlemen introduced into the chain just adds another layer of indirection that is susceptible to failure.
- avmich 2y agoNo, Bob standing outside of your yard is principally closer to you - as in, holding your hand - and can't fail to release pizza only after you got hold of it. Of course the rain may flip bits in any system, but that would amount to destruction of you. You won't worry about pizza then, but your clone will spring up and get the pizza from Bob. And Bob himself is similarly protected from single-point-of-failure problems. Of course the whole Bob subsystem may be destroyed, but that's already beyond the threshold of the problem we choose. Otherwise we'd have the external system to check if we'd actually got the pizza, and resend it again. EDIT: that's probably the definition of "only you" - the Bob being that close. Agree then.
- Maxatar 2y agoIf you have a system where failure is impossible then none of this applies and yes, you can implement a deliver exactly once protocol. It's only in systems where failure is a possibility that exactly once delivery becomes impossible.
- avmich 2y agoCorrect, and we need Bob to actually be part of us in order to tolerate his failures.