连接处理方法
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+ 的高效方法。自 1.11.3 版本起,支持
EPOLLRDHUP
(Linux 2.6.17,glibc 2.8)和EPOLLEXCLUSIVE
(Linux 4.5,glibc 2.24)标志。一些较旧的发行版如 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
方法)。