On a shoe-string and a t2.small: scaling on a [zero] budget.
I have a side project. It's a web app. It got popular. Uh-oh.
When you work for a company, you probably have a decent-sized infrastructure budget. And when you're building a Django project, you have a lot of scope for scaling it up: Add more gunicorn workers! Split the async task workers into their own servers! Quadruple the RAM of the database instance! Beef up your Elasticache!
Okay, but what if you can't just throw your employers' money at it? What if, to keep your side project affordable, you bought a reserved instance for it just a week before it started to go viral? What if the number of users starts going up 50% per week and... doesn't... stop...
You're gonna have to get clever.
Tom is a developer, systems architect, DevOps, and security consultant based in Wellington, New Zealand. His passion is building -- and helping developers to build -- solid, robust, and maintainable systems.
Tom writes words that control computers to tell other computers to build FAKE computers that run on DIFFERENT computers.