Skip to content

Nginx event library

nginx docs Connection processing methods

The following connection processing methods are supported:

  • select — standard method. The supporting module is built automatically on platforms that lack more efficient methods. The --with-select_module and --without-select_module configuration parameters can be used to forcibly enable or disable the build of this module.

  • poll — standard method. The supporting module is built automatically on platforms that lack more efficient methods. The --with-poll_module and --without-poll_module configuration parameters can be used to forcibly enable or disable the build of this module.

  • kqueue — efficient method used on FreeBSD 4.1+, OpenBSD 2.9+, NetBSD 2.0, and macOS.

  • epoll — efficient method used on Linux 2.6+.

    The EPOLLRDHUP (Linux 2.6.17, glibc 2.8) and EPOLLEXCLUSIVE (Linux 4.5, glibc 2.24) flags are supported since 1.11.3.

    Some older distributions like SuSE 8.2 provide patches that add epoll support to 2.4 kernels.

  • /dev/poll — efficient method used on Solaris 7 11/99+, HP/UX 11.22+ (eventport), IRIX 6.5.15+, and Tru64 UNIX 5.1A+.

  • eventport — event ports, method used on Solaris 10+ (due to known issues, it is recommended using the /dev/poll method instead).

NOTE:

一、可以看到,Nginx也是基于IO multiplexing的