Skip to main content

Joel Liu's Library tagged stackoverflow   View Popular, Search in Google

Jun
22
2011

  • The first reason is that system itself might just break down because it is the wrong way to do it. Sam Saffron put this perfectly when he was interviewed at MIX: “By adding more servers all we would really be doing is distributing the slow”. (Why is turning non-nouns into nouns so catchy?). The other reason is that the cost to throw more hardware at the problem starts to become untenable.
    • Do more with less

        

      You can start to become scalable very early on, even with only a few servers. There are lots of ways we generally practice scalability, a few examples are:

        
      • Code and script management tasks. When you have 3 servers you may not need to do this, you can probably do it by hand. However, when you have 100 you will have no choice.
      • Use algorithms and data structures that are efficient.
      • Use caching effectively.
      • Document tasks so you are not a single point of failure and so you don’t have to relearn things every time.
      • Use centralized authentication, configuration management, updates, etc.
      • Use automated building and deployment processes.

  • Why disgusting? Personality is the antithesis of scalability. With a large number of servers, each with their own personality, you will need more administrators, and a chaotic management structure. The Borg are the good guys. This is because of some of the distinct advantages of being more like the Borg:
  • At Stack Exchange, we have done a good job at achieving this with our web tier. We do have 1 staging web server, but for our other 9 web servers, the seventh is just seven of nine. George has made a deployment process which includes everything we need, making any web server disposible, and a new one ready for assimilation. Should one of them be destroyed, the others will automatically take over without concern. However, in some areas we are still more like the Federation. We have 4 database servers, and we have noticed areas where our db01/db02 pair is unlike our db03/db04 pair. If one of our primary servers fail, we will mourn the loss as we carry out a manual fail over process. If we were more like the Borg in this area, we could initiate self destruct on one of these servers without a care as the Borg queen would do.

  • We now keep all the web server configs the same so adding another server for a site is just a load balancer change. So currently stackoverflow.com runs on 6 servers (3 servers dedicated for stackoverflow only).
  • 3 more annotation(s)...

    • 95 Million Page Views a Month
    • 800 HTTP requests a second
    • 180 DNS requests a second
    • 55 Megabits per second
  • 1 more annotation(s)...
1 - 4 of 4
Showing 20 items per page

Highlighter, Sticky notes, Tagging, Groups and Network: integrated suite dramatically boosting research productivity. Learn more »

Join Diigo
Move to top