This Site Can Handle 450 Requests/Sec25 May 2016
Ok, ok, ok - that's only exciting under certain circumstances. Yes, this is just a static site generated by Jekyll. There is nothing transactional. There is no database. But, there is an important fact, and that fact is this site costs about $0.15/month to run no matter how much traffic might slam it.
To give you some overview, here's what's in play:
- Jekyll for writing content and generating the static site output.
- AWS S3 for hosting the content.
- Cloudflare for CDN, DDoS protection, etc.
In this configuration I did a couple of tests. One with a very cool tool called Goad that does load testing with a Go application and AWS Lambda. Here were the results:
Sure, there are a few timeouts and other errors, some of which are due to AWS Lambda or SQS (both used by Goad), others likely by Cloudflare getting pretty quickly bombarded. But those 90k requests happened within the span of about a minute and a half. Your $5 budget host would have come crashing down hard under that number of requests. A 4% error rate with a sudden surge of nearly 100k visitors in just over a minute is quite respectable.
If you've got a site that can serve its purpose as a generated static site, it's very impressive how easy it now is to scale it with modern tools. Even 10 years ago you'd have had a very hard time doing this before you'd have bandwidth issues, even if you had your whole site in memory on your host server. I'mon Cloudflare free and the S3 cost to host this static site comprises the ~$0.50 a month.
While some of the uses of this type of setup might be esoteric, one thing to keep in mind is that if you don't have a setup like this you're vulnerable to DDoSing both financially and technically - meaning you're going to pay for the bandwidth and probably going down hard. And the bandwidth saving is no joke. Here's what Cloudflare's analytics showed after this test: