How Supplybunny handled a 10x spike in traffic
The beginning of the MCO was quite stressful but I’m happy about a small victory shown in this screenshot:
Supplybunny site was live and taking orders the entire time, handling peak traffic of up to ×10 the normal and ×3-5 the normal daily number of users. Not bad especially considering what I think is our very reasonable hosting bill.
This is the result of a couple of things:
-
Slight over-provisioning. Of course, in order to cater to peaks servers have to be slightly over-provisioned. But, in this case they were just in the right ball-park it just so happens that peaks lasted for hours. So, that means that they weren’t over, but exactly correctly provisioned.
-
I did my best to identify bottlenecks early. The first few days when traffic was highest I thoroughly analyzed the logs looking for bottlenecks. At this point the server was just sufficient and I always had
top
open in the slightest of panics. I managed to find a few improvements that resulted not only in better throughput but better response times — even under heavier load. I usedrequest_log_analyzer
andgoaccess
for logs and took a few cues from Lighthouse (more focus on client-side caching in particular).
Besides that, we also launched new landing pages for home groceries and didn’t even have to resort to Google Forms.
Quite happy with that, even if I do say so myself.
(The previous downtime was on Feb 26 when DigitalOcean was performing maintenance)