You've since mentioned that you've gone for a 4 gig box with 55 Passenger workers. Definitely a good start.
If I were in your shoes, these three items would be next on my emergency-scaling checklist:
1. Database sanity check: Are you using indexes for calls like "Find user by username"? Does your database need its own dedicated box?
2. Pick up another box for memcached. Full-page cache everything you can with rack-cache. Don't worry about expiration, just use some reasonably low TTL to put a throttle on your read requests for now.
3. Move all of your static assets to S3 + CloudFront. Gzipped, with a far-future Expires header. While you're in there, move the JS to the footer of your layouts. No sense serving any of that stuff from your Linode boxes if they're as pegged as they sound from your other comments.
As to making money? No clue. Maybe I'll have an idea when I can get a request through and see what the app is all about ;)
One thought occurs: this seems to be a very vanity-driven kind of app. Find a way to charge $1, $2 or even $5 for some simple premium vanity-stoking feature and you could be in good shape. Better than advertising, in my book.
If I were in your shoes, these three items would be next on my emergency-scaling checklist:
1. Database sanity check: Are you using indexes for calls like "Find user by username"? Does your database need its own dedicated box?
2. Pick up another box for memcached. Full-page cache everything you can with rack-cache. Don't worry about expiration, just use some reasonably low TTL to put a throttle on your read requests for now.
3. Move all of your static assets to S3 + CloudFront. Gzipped, with a far-future Expires header. While you're in there, move the JS to the footer of your layouts. No sense serving any of that stuff from your Linode boxes if they're as pegged as they sound from your other comments.
As to making money? No clue. Maybe I'll have an idea when I can get a request through and see what the app is all about ;)
One thought occurs: this seems to be a very vanity-driven kind of app. Find a way to charge $1, $2 or even $5 for some simple premium vanity-stoking feature and you could be in good shape. Better than advertising, in my book.
Have fun!