3 ms·
Daniel Novak on Twitter posted this[1] after reading the Signal-Android commit history[2]: "I think the @signalapp apps DDoS'ed the server. Servers ran over ca
by jez 6y ago
Daniel Novak on Twitter posted this[1] after reading the Signal-Android commit history[2]:
"I think the @signalapp apps DDoS'ed the server. Servers ran over capacity due to influx of users and started to return HTTP 508 which was not handled by the app and millions of apps started retrying the connection at once. Judging from recent commits in https://github.com/signalapp/Signal-Android/commits/master https://github.com/signalapp/Signal-Android/commits/master"
Surely a timely reminder for all of us:
- Avoid infinite retry loops
- Build jitter and exponential backoff into retry logic
The code isn't terribly hard to write, but remembering to write it can be (if your HTTP client doesn't do it by default).
[1] https://twitter.com/NovakDaniel/status/1350471722034745348 https://twitter.com/NovakDaniel/status/1350471722034745348
[2] https://github.com/signalapp/Signal-Android/commits/master https://github.com/signalapp/Signal-Android/commits/master