Python to Go in one dyno restart. 10–15 seconds.
The whole bot was rewritten in Go on the same database, so no group lost a single setting. The switch took one Heroku dyno restart: ten to fifteen seconds offline, then the Go binary was serving every group.
- BeforePython, one long-running process for every group
- CutoverA single dyno restart, 10–15 seconds offline, settings untouched
- First bootTelegram had 72,000+ stale messages queued, growing by ~300 a second. The bot was busy clearing old updates instead of answering new ones.
- FixDrop the backlog at startup and ignore anything older than a minute. The queue now sits at zero or one.