Performance and Testing

If I expect or want to build my rails app in such a way that it can be used fast performance wise if used by 10000 or so users simulataneously then what should be the web dynos I need to have and are improving the indexex and precompiling, compressing my assets the only way to increase the performance
I am confused with the number of web dynos I should be using on heroku or the size of the instance I should be using on AWS.

That’s a lot to worry about out of the gate. The answer is that you should start off as small as possible and not worry about 10,000 concurrent users. That’s not to say you should add code you know to be poorly performing when better options are easy to pursue – you certainly want to avoid N+1 queries, etc.

Start of small and monitor your performance. Find your bottlenecks and fix those in code before opening your wallet to add more dyno’s or a bigger database or anything like that.

Now, if you’re confident you’re going to see 10K users to your service on day 1, then this is a different conversation. Most apps never see that kind of load, though. I’d still say start small, but it’s probably appropriate to be looking at some simpler forms of caching up front. You’d still want to start with a limited audience, monitor, and respond though.