1

Is there any reason not to use a software load balancer / proxy in front of many small websites for admin purposes. I work for a web design agency where we have maybe 30-40 small to medium websites for clients.

My idea is to use a beefy virtual server and point all domain names to that, the software load balancer would then route the requests through to one of many (15+) virtual servers in the background.

The benefits I can see would be:

  • Easy to upgrade and move sites to different servers
  • Possibility of spreading busier sites across multiple servers
  • Easy to take a server down for maintenance while display a nice message to visitors
  • possible to have a fallback page for each site (html file with logo and contact details for each client when their site is throwing a 404 error)

Disadvantages would be:

  • Single point of failure is the load balancer
  • complexity

Is this a good idea or a terrible idea?

2 Answers 2

3

What you are describing is not a load balancer, but rather a reverse proxy. A load balancer is a special type of reverse proxy (well, most are anyway).

Complexity isn't really too big of a deal, just make sure that your reverse proxy adds an X-Forwarded-For header, and that your client software respects the header (otherwise all your analytics will be filled with the IP address of your proxy).

A SPOF is a worry, but you had SPOF for your customer sites anyway if they were only ever running on a single host, so the SPOF you are adding here certainly does need to be considered, but you have to look at everything in context.

Additionally, this reverse proxy does not need to be a beefy machine. Nginx should be able to run a reverse proxy for 25 sites on a pittance of hardware.

1

Either set up 2 * HAProxy instances as a master/slave pair.

Or why not just use Amazon Route 53?

Its cheap, fast, transparent and has health checks.

Load balancers are most effective when the application is clustered on multiple servers.

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.