Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

I have a shopping site with 1m products, to be honest I have a lot of questions - most of them probably subjective, but this one I think fits.

When is the right time to get a load balancer? We have 1 server at the moment, and are rampantly looking for growth. Anything could happen at any moment, so I ask - whens the right time? We have the resources to buy one now and plug it into our app server so if things do start to heat up, we can just plug another box in to the load balancer and be on our merry way.

Given that, whats a good load balancer spec? We work with Hetzner, and they have particularly meaty specs. For 50 euros we can get a pretty meaty box. Is this overkill? Is there such a thing as overkill in this context?

Appreciate any help, I haven't had much exposure to this kind of thing.

Thanks in advance

share|improve this question

2 Answers 2

up vote 0 down vote accepted

When you need and can afford high availability and your software is ready for it.

You still have plenty of space to grow with your single server setup: you can upgrade your current server, you can move database to a second one, you can move static content (images) to third server or offload it to CDN and so on. Performance-wise you'll need to get a hang of multiple database server setup way before you'll need a load balancer for your frontend.

Get your software ready to scale beyond single frontend server (shared sessions), beyond single database server (master-slave/multiple-master-slave setup) and beyond single static content server (CDN, sharding/syncing etc). Once you are sure this works you can start thinking about a load balancer and more complicated setup.

It's supposed to go beyond simple performance scaling - your setup should automatically redistribute load when one of the frontend servers goes down and on the backend be able to handle a database server crashing.

share|improve this answer
    
Thank you sir, great answer. I get your last point, high availability, right? –  Geoff Wright Jul 13 '12 at 16:05
    
Exactly. That also means redundant load balancer, because if you have one that's a single point of failure. –  c2h5oh Jul 13 '12 at 16:09

You need a load balancer when you need more than one machine. You need more than one machine when your capacity or availability requirements exceed what is possible (within your risk assessment parameters) of a single machine.

Beyond that, it's really hard to say, when all you've given us is "shopping site".

share|improve this answer
    
No. You need a load balancer only when the functionality it offers actually improves the operation of your server network. "More than one machine" is way too arbitrary a criterium :) –  adaptr Jul 13 '12 at 11:59
    
Hi, I said "shopping site", so you knew roughly what domain. Not an IRC server, FTP site, etc. Thank you for your comments. –  Geoff Wright Jul 13 '12 at 16:06
    
@adaptr: Really? When would you use a load balancer when you don't have more than one machine? –  womble Jul 13 '12 at 19:55
    
@GeoffWright: As someone who is responsible for the management and administration of several hundred shopping sites, including some fairly spectacularly large infrastructures, I can fairly state that "shopping site" does not convey sufficient information to provide a useful answer as to scalability concerns. –  womble Jul 13 '12 at 19:56
    
@womble, I was only hoping for some rough pointers, as it turned out that amount of information was suffice. Thanks for your comments –  Geoff Wright Jul 16 '12 at 8:40

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.