5
上流のUNIXソケットへのnginxスループットを増やす必要があります— Linuxカーネルのチューニング?
私は、次のように、上流のUnixソケットへのプロキシとして機能するnginxサーバーを実行しています: upstream app_server { server unix:/tmp/app.sock fail_timeout=0; } server { listen ###.###.###.###; server_name whatever.server; root /web/root; try_files $uri @app; location @app { 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_redirect off; proxy_pass http://app_server; } } 一部のアプリサーバープロセスは、リクエスト/tmp/app.sockが利用可能になったときに順番にプルします。ここで使用している特定のアプリサーバーはUnicornですが、この質問に関係があるとは思いません。 問題は、ある程度の負荷を超えると、nginxは十分な速度でソケットを介してリクエストを取得できないように見えることです。設定したアプリサーバープロセスの数は関係ありません。 私はnginxエラーログにこれらのメッセージの洪水を受け取っています: connect() to unix:/tmp/app.sock failed (11: Resource temporarily unavailable) while connecting …