¿Qué significa upstream en nginx?

138
upstream app_front_static {
    server 192.168.206.105:80;
}

Nunca lo había visto antes, alguien sabe, ¿qué significa?

gdb
fuente

Respuestas:

161

Se utiliza para enviar solicitudes a otros servidores .

Un ejemplo de http://wiki.nginx.org/LoadBalanceExample es:

http {
  upstream myproject {
    server 127.0.0.1:8000 weight=3;
    server 127.0.0.1:8001;
    server 127.0.0.1:8002;    
    server 127.0.0.1:8003;
  }

  server {
    listen 80;
    server_name www.domain.com;
    location / {
      proxy_pass http://myproject;
    }
  }
}

Esto significa que todas las solicitudes para / ir a cualquiera de los servidores enumerados en el flujo ascendente XXX, con preferencia para el puerto 8000.

Phil Lello
fuente
1
¿Por qué precisas http {}? Mi conf no tiene esto y funciona. Solo me pregunto
Olivier Pons
44
@OlivierPons tal vez su configuración es la /etc/nginx/conf.d/default.confque está incluida /etc/nginx/nginx.conf, que TIENEhttp {}
srghma