2
**NGINX LOad Balancing**
nginxを使用してIISでホストされているサーバの負荷を分散しようとしています。私は、アプリケーションプールのいずれかをシャットダウンすると、nginxは、そのサーバーへのリクエストの送信を停止する必要があります。しかし、私はnginxが両方のservers.Belowに要求を送信し続けていると私の設定です。nginxとiisサーバ、ロードバランシング
events {
worker_connections 2048;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile off;
#tcp_nopush on;
keepalive_timeout 0;
upstream xxx {
server xxxxxxx:80 max_fails=1 fail_timeout=30;
server xxxxxxxx:80 max_fails=1 fail_timeout=30;
}
server {
listen zzzz;
server_name localhost;
location /yy {
proxy_cache off;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_set_header Connection "";
proxy_http_version 1.1;
proxy_pass http://xxx;
}
}
Nginxは、アプリケーションプールをシャットダウンしても、依然として他のサーバーに要求を送信し続けます。
<HTML>
<HEAD>
<TITLE>Service Unavailable</TITLE>
</HEAD>
<BODY>
<h2>Service Unavailable</h2>
<hr>
<p>HTTP Error 503. The service is unavailable.</p>
</BODY>
</HTML>
アプリケーションプールはサーバーではなく、誤っていない場合は、Webサーバー上のIISをシャットダウンした場合にのみこの設定が機能します。 –
私は、アプリケーションプールをシャットダウンすることを意味します。 iisサーバーをシャットダウンしても、nginxは404 statuysを戻し続けます。理想的には、購読を停止する必要があります。 – Jitin