1 comment

[ 4.7 ms ] story [ 31.6 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.