How to Cope With (Unexpected) Millupling of Your Workload?
At MessageBird we love APIs and our customers love them even more! One of our APIs allows our customers to send messages in bulk and we were able to cope with that for many years. As the number of large customers increases, so does the amount of bulk messages sent by our customers. How do you scale a system that’s receiving 300 messages per second and, unexpectedly, receives 4 million messages? As the API team at MessageBird started to improve the performance of their APIs it became apparent that also the database required an overhaul.
Our ultimate goal was to move this workload to a sharded system (Vitess or DIY shards) but that required an extensive overhaul that could take months to complete. The focus of this talk is the steps we took before our move towards sharding. How can you extend the life of an existing system and buy time to work on the sharding step? We will cover the topics of RFCs, read-offloading, parallel replication but also topics like understanding the implications of UUIDs on the normal workload when a customer starts pushing 4 million messages through.
Speaker: Art van Scheppingen – MessageBird