Apa arti upstream di nginx?

142
upstream app_front_static {
    server 192.168.206.105:80;
}

Belum pernah melihatnya sebelumnya, ada yang tahu, apa artinya?

gdb
sumber

Jawaban:

167

Ini digunakan untuk mem - proxy permintaan ke server lain .

Contoh dari http://wiki.nginx.org/LoadBalanceExample adalah:

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

Ini berarti semua permintaan untuk / pergi ke salah satu server yang terdaftar di bawah XXX upstream, dengan preferensi untuk port 8000.

Phil Lello
sumber
1
kenapa kamu tepat http {}? Conf saya tidak memiliki ini dan berfungsi. Hanya ingin tahu
Olivier Pons
4
@OlivierPons mungkin konfigurasi Anda /etc/nginx/conf.d/default.conftermasuk di /etc/nginx/nginx.confdalamnya, yang HAShttp {}
srghma
0

Jika kami memiliki satu server, kami dapat langsung memasukkannya ke proxy_pass. Tetapi jika kami memiliki banyak server, kami menggunakan upstream untuk memelihara server. Nginx akan memuat keseimbangan berdasarkan lalu lintas masuk.

satyanarayana
sumber