How can I calculate how many servers do I need?

13,585

Solution 1

Unless you happen to have 4 million users all lined up ready to use your site I would just get one cheap server to start everything with and see where it goes from there. Concentrate, instead, on building a scalable software platform for your service. Test, benchmark, profile everything you can so you know what the limits of your software/hardware is at any time and what effect changes have.

If you are mainly just curious about high end scalability you can search for how the current "big guys" do it and the challenges they faced along the way. For example, Facebook, Wikipedia, High Scalability, MySpace, etc.... You may not be aiming so high but you can learn a lot from how they do things and use the same design patterns. Unless you have experience working with such large systems it is very hard or impossible to guess the scalability issues you are going to have until you have them.

Solution 2

Will depend on how much time/page loads the average user has. Social networking tends to be "sticky" according to Facebook, so people hang around for a while. More page loads means more load on the system. The code behind the site will have another huge effect, better code will put a lighter load on the system.

These days if you don't have a good idea how much/how fast your site will grow you might want to consider one of the cloud hosting environments like EC2 or Rackspace Cloud/Slicehost. You can buy two server instances to get started, and add more servers quickly as load changes. Experience with your app is the best way to get a solid idea on how much capacity you will really need. Excess capacity sitting around is expensive, so avoid it if you can.

Having said that, 100,000 users isn't a huge load if they only load the page a few times a day. You should be able to get started on that with as little as a single server and probably no more than 2-3 total.

Solution 3

We don't have 1/4th of the info needed to respond to this question, 1 we need to know your budget,2 we need to know how efficient and how much power your code takes. How much data will you have? And quite honestly 4 million isn't likely, and if you had that much you'd hire a professional to evaluate your needs.

Share:
13,585

Related videos on Youtube

Julien Cambier
Author by

Julien Cambier

Updated on September 17, 2022

Comments

  • Julien Cambier
    Julien Cambier over 1 year

    Assuming that I and some of my friends trying to build a social network for a large number of people approximatelly 4,000,000. Let's say a random 100,000 of them will be available online every day. The database usage will be let's say 200 MB a day!

    Now How can I know how many servers do I need and which will be best to suit our goal?

    Regards,

    • Tom O'Connor
      Tom O'Connor about 13 years
      Where are you going to get 4,000,000 unique users from, and how are you going to convince 100,000 of them to be on the site at any one time? You Are Not Facebook.
    • Julien Cambier
      Julien Cambier about 13 years
      100,000 a day not per minute :) I mean the total in 24 hrs will be approx. 100,000.
    • sciurus
      sciurus about 13 years
      It sounds like you haven't written the software yet. You need to do that, the benchmark it, before you can answer this question.