1 comment

[ 3.9 ms ] story [ 15.4 ms ] thread
We achieved this at Hotmail 2 decades ago by trading latency for correctness.

Publisher: do at least once delivery, but only up to the next k minutes.

Each subscriber has a bitset of received IDs, filtering out redeliveries. Every 2*k minutes, bitset can be GC’d.