Heim >Betrieb und Instandhaltung >Nginx >So konfigurieren Sie Nginx für den Lastausgleich

So konfigurieren Sie Nginx für den Lastausgleich

(*-*)浩
(*-*)浩Original
2019-07-15 11:03:344068Durchsuche

nginx führt einen Lastausgleich basierend auf Reverse-Proxy durch

So konfigurieren Sie Nginx für den Lastausgleich

Der Code lautet wie folgt:

## Basic reverse proxy server ##  
## Apache backend for www.baidu.com ##  
upstream henushang  {  
        # 不过最好换成你们的服务器测试,因为我测试的时候使用jd和baidu的都没有连接成功,         # 换成自己的服务器就行了,估计是那里有限制,如果哪位知道,请指教  
        server www.jd.com weight=1; # 或者ip:port这样形式也是可以的  
    server www.baidu.com weight=9; # 或者ip:port这样形式也是可以的  
}  
  
## Start www.baidu.com ##  
server {  
    listen 80;  
    server_name  www.henushang.cn;#监听的域名  
  
    access_log  logs/henushang.access.log;  
    error_log  logs/henushang.error.log;  
    root   html;  
    index  index.html index.htm index.php;  
  
    ## send request back to apache ##  
    location / {  
        proxy_pass  http://henushang;#与上面的upstream名字相对应  
  
        #Proxy Settings  
        proxy_redirect     off;  
        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_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;  
        proxy_max_temp_file_size 0;  
        proxy_connect_timeout      90;  
        proxy_send_timeout         90;  
        proxy_read_timeout         90;  
        proxy_buffer_size          4k;  
        proxy_buffers              4 32k;  
        proxy_busy_buffers_size    64k;  
        proxy_temp_file_write_size 64k;  
   }  
}

nginx hat Die folgenden Methoden für den Lastausgleich:

1. RR (Standard) Jede Anfrage wird nacheinander einem anderen Backend-Server zugewiesen. Wenn der Backend-Server ausfällt, kann dies der Fall sein automatisch beseitigt. Zum Beispiel:

upstream tomcats {     
               server 10.1.1.107:88  max_fails=3 fail_timeout=3s weight=9;   
               server 10.1.1.132:80  max_fails=3 fail_timeout=3s weight=9;

2. ip_hash Jede Anfrage wird entsprechend dem Hash-Ergebnis der Zugriffs-IP zugewiesen, sodass jeder Besucher festen Zugriff auf einen Back-End-Server hat, der lösen kann das Sitzungsproblem. Zum Beispiel:

upstream tomcats {   
           ip_hash;    
           server 10.1.1.107:88;    
           server 10.1.1.132:80;    
}

3. Fair (Drittanbieter) Weisen Sie Anfragen entsprechend der Antwortzeit des Backend-Servers zu, und diejenigen mit kurzen Antwortzeiten werden zuerst zugewiesen.

4. url_hash (Dritter) Weist Anfragen entsprechend dem Hash-Ergebnis der aufgerufenen URL zu, sodass jede URL an denselben Back-End-Server weitergeleitet wird. Dies ist effektiver, wenn Der Back-End-Server wird zwischengespeichert.

Weitere technische Artikel zum Thema Nginx finden Sie in der Spalte Nginx-Tutorial, um mehr zu erfahren!

Das obige ist der detaillierte Inhalt vonSo konfigurieren Sie Nginx für den Lastausgleich. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:openresty nginx unterschiedNächster Artikel:openresty nginx unterschied