接続処理方法
nginxでは、さまざまな接続処理方式をサポートしています。特定の方式を利用できるかどうかは、使用するプラットフォームによって異なります。複数の方式をサポートするプラットフォームでは、nginxは通常、最も効率的な方式を自動的に選択します。ただし、必要に応じて、接続処理方式をuseディレクティブを使用して明示的に選択できます。
次の接続処理方式がサポートされています
-
select
−標準方式。この方式をサポートするモジュールは、より効率的な方式がサポートされていないプラットフォーム上で自動的に構築されます。--with-select_module
および--without-select_module
構成パラメータを使用すると、このモジュールのビルドを強制的に有効または無効にできます。 -
poll
−標準方式。この方式をサポートするモジュールは、より効率的な方式がサポートされていないプラットフォーム上で自動的に構築されます。--with-poll_module
および--without-poll_module
構成パラメータを使用すると、このモジュールのビルドを強制的に有効または無効にできます。 -
kqueue
−FreeBSD 4.1以降、OpenBSD 2.9以降、NetBSD 2.0以降、macOSで使用される効率的な方式です。 -
epoll
−Linux 2.6以降で使用される効率的な方式です。EPOLLRDHUP
(Linux 2.6.17、glibc 2.8)およびEPOLLEXCLUSIVE
(Linux 4.5、glibc 2.24)フラグは1.11.3以降でサポートされています。SuSE 8.2などの古いディストリビューションの中には、パッチを提供してepollを2.4カーネルに追加するものがあります。
-
/dev/poll
−Solaris 7 11/99以降、HP/UX 11.22以降(eventport)、IRIX 6.5.15以降、Tru64 UNIX 5.1A以降で使用される効率的な方式です。 -
eventport
−イベントポート。Solaris 10以降で使用される方式です(既知の問題があるため、代わりに/dev/poll
方式を使用することを推奨します)。