← All posts

Why we abandoned leader-election for push gateways

Push notifications used to need exactly one gateway per network. Then we noticed leader-election was 80% of our outage minutes — so we removed it.

The problem

Leader-election in a self-healing mesh is expensive. The math: every node has to vote, every node has to listen, every node has to fail over.

The simplest fix is the one that removes the requirement entirely.

So we did. Any node flagged as push-gateway in config does the work — multiple gateways are fine. No vote, no quorum, just config.