Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon multi_accept をオンまたはオフに設定するとどのような影響がありますか


multi_accept をオンまたはオフに設定するとどのような影響がありますか


NGINX で `multi_accept` を `on` または `off` に設定すると、ワーカー プロセスが新しい接続を処理する方法に重大な影響を与えます。主な違いは次のとおりです。

`multi_accept off` (デフォルト)

- ワーカー プロセスは一度に 1 つの新しい接続を受け入れます: 各ワーカー プロセスは 1 つの新しい接続を受け入れ、それを処理してから、次のイベントを処理するためにカーネルに戻ります。
- システム リソースの効率的な使用: このアプローチにより、複数の接続を同時に処理することでシステム リソースが無駄にならないため、各ワーカー プロセスが効率的に利用されます。
- ほとんどのユースケースに推奨: これはデフォルト設定であり、効率的なリソース利用の必要性と新しい接続の処理の必要性のバランスをとるため、ほとんどのユースケースに適しています。

`multi_accept on`

- ワーカー プロセスはすべての新しい接続を一度に受け入れる: 各ワーカー プロセスはすべての新しい接続を同時に受け入れるため、大量の接続を効率的に処理できます。
- リソースの浪費の可能性: 新しい接続の量が少ない場合、一部のワーカー プロセスは複数の接続を同時に処理することでシステム リソースを浪費する可能性があります。
- ほとんどのユースケースでは推奨されません: 新しい接続の量が少ない場合、システム リソースの非効率な使用につながる可能性があるため、この設定はほとんどのユースケースでは推奨されません。

要約すると、「multi_accept」を「on」に設定すると、新しい接続の量が多いトラフィックの多い Web サイトでは有益ですが、新しい接続の量が少ない場合はリソースの浪費につながる可能性があります。 「multi_accept」を「off」(デフォルト)に設定すると、システム リソースが効率的に使用され、ほとんどの使用例に適しています。

引用:
[1] https://serverfault.com/questions/763597/why-is-multi-accept-off-as-default-in-nginx
[2] https://hub.packtpub.com/fine-tune-nginx-configufine-tune-nginx-configurationfine-tune-nginx-configurationratio/
[3] https://blog.nginx.org/blog/performance-tuning-tips-tricks
[4] http://nginx.org/en/docs/ngx_core_module.html
[5] https://webdock.io/en/docs/webdock-control-panel/optimizing-performance/optimizing-nginx-high-traffic-websites