Balanceo de carga usando NginX

Nginx permite balancear la carga entre distintos servidores backend cuando esta funcionando en modo proxy. Aqui pongo una configuracion de proxy para nginx que pueden ser utiles para tener a nginx como balanceador:

upstream servidores  {
  server 127.0.0.1 weight=5 max_fails=2 fail_timeout=10s;
  server 127.0.0.1:80 weight=5 max_fails=2 fail_timeout=10s;
  server localhost:80 weight=5 max_fails=2 fail_timeout=10s;
}

server {
  server_name www.tudominio.tld otrohost.tudominio.tld otrodominio.tld;
  location / {
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_pass  http://servidores;
  }
}

El parametro de configuracion Weight, que por omision es «1», indica cuantas peticiones seguidas se dirigiran a ese backend. Si es 5, pues mandará 5 a ese, luego 5 al siguiente, y asi.
El parametro fail_timeout indica el tiempo que esperara a enviar peticiones a un backend tras detectar un fallo y considerarlo caido.
El parametro max_fails indica cuantas veces ha de dar error el backend para marcarlo como caido.

No olvides hacer coincidir el nombre de los backends (en verde) y ajustar lo que esta en rojo a tu configuracion personal.

Mas info en:
Explicacion sobre parametros para el backend
Web oficial de Nginx