Co oznacza upstream w nginx?

137
upstream app_front_static {
    server 192.168.206.105:80;
}

Nigdy wcześniej tego nie widziałem, nikt nie wie, co to znaczy?

gdb
źródło

Odpowiedzi:

160

Służy do przekazywania żądań do innych serwerów .

Przykład z http://wiki.nginx.org/LoadBalanceExample to:

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;
    }
  }
}

Oznacza to, że wszystkie żądania / idą do dowolnego z serwerów wymienionych w nadrzędnym XXX, z preferencją dla portu 8000.

Phil Lello
źródło
1
dlaczego precyzujesz http {}? Mój conf nie ma tego i działa. Tylko się zastanawiałem
Olivier Pons
4
@OlivierPons może twoja konfiguracja jest /etc/nginx/conf.d/default.confzawarta w /etc/nginx/nginx.conf, która MAhttp {}
srghma