I guess this question has been asked a lot around. I know Rails can scale because I have worked on it and it’s awesome. And there is not much doubt about that as far as PHP frameworks are concerned.
I don’t want to know which frameworks are better.
How much is difference in cost of scaling Rails vs other frameworks (PHP, Python) assuming a large app with 1 million visits per month?
This is something I get asked a lot. I can explain to people that “Rails does scale pretty well” but in the long run, what are the economics?
If somebody can provide some metrics, that’d be great.
One major factor in this is that isn’t affected by choice of framework is database access. No matter what approach you take, you likely put data in a relational database. Then the question is how efficiently you can get the data out of the database. This primarily depends on the RDBMS (Oracle vs. Postgres vs. MySQL), and not on the framework – except that some data mapping library may make inefficient use of SQL.
For the pure “number of visits” parameter, the question really is how fast your HTML templating system works. So the question is: how many pages can you render per second? I would make this the primary metrics to determine how good a system would scale.
Of course, different pages may have different costs; for some, you can use caching, but not for others. So in measuring scalability, split your 1 million visits into cheap and expensive pages, and measure them separately. Together, they should give a good estimate of the load your system can take (or the number of systems you need to satisfy demand).
There is also the issue of memory usage. If you have the data in SQL, this shouldn’t matter – but with caching, you may also need to consider scalability wrt. main memory usage.