Thanks Peter for answering me. The requests mostly will be the reads, approximately 70/30. And I also thought about Erlang. But I don't want to lose benefits from Ruby and RoR. What I want to create is some hybrid system with several languages. For example, Twitter still using RoR, but for back-end the use Scala. Some similar architecture, as in Twitter, I want to reach, but using Erlang instead Scala.
четверг, 17 января 2013 г., 0:57:43 UTC+8 пользователь Peter Hickman написал: > > On 16 January 2013 16:06, Vitaly Zemlyansky <[email protected]<javascript:> > > wrote: > >> Currently, I don't have problems. As I wrote, I am just expecting that >> most problems will be with DB's. >> I read about this problems in architecture of highload projects. And I >> know that relational model can't scale for millions simultaneously requests. >> >> > Do you have a good reason to believe that you will have millions of > simultaneously requests to deal with? What sort of request will they be, > will the be 99% reads and 1% writes or 50/50? The answer to that question > will determine how you approach the problem. > > You should be able to determine the ratio to some degree from the existing > system - assuming you have a sufficient number of users. > > The best practice is to measure the issues and then work forward, we could > spend our lives talking about how best to optimise an application but it > comes to nothing if we do not have real data to work with. Also the > measurements you take will allow you to see what improvement has happened > and if it was worth the effort. > > For reference one of our systems is Ruby 1.8.7, Rails 2.3, PostgreSQL 8.4, > 512Mb ram, memcached and it handles from 800,000 to 1,700,000 requests per > day (but that works out to an average of 9 to 18 requests per second). If > you are expecting to handle 1,000,000 simultaneously requests (that is > 1,000,000 requests per second) you would be looking at round 86,400,000,000 > requests a day! > > Most places, outside of Facebook, Google or international banks, are very > unlikely to experience the sort of load that you are anticipating. If you > really do plan to handle millions of simultaneously requests you will have > to start writing some very large cheques for the hardware you will need to > run this all on. > > Actually millions simultaneously requests is starting to sound like you > shouldn't be using Ruby at all! Get a programmer from a bank to do this in > erlang for you. > > -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msg/rubyonrails-talk/-/kouqv0A24rcJ. For more options, visit https://groups.google.com/groups/opt_out.

