Mercurial > hg > nginx-site
annotate xml/en/docs/events.xml @ 1395:d68d1b88512a
List of supported platforms for linux packages added.
author | Sergey Budnevitch <sb@waeme.net> |
---|---|
date | Thu, 22 Jan 2015 15:26:49 +0300 |
parents | 629630df119a |
children | eea7541e7c6a |
rev | line source |
---|---|
580
be54c443235a
Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents:
563
diff
changeset
|
1 <!-- |
be54c443235a
Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents:
563
diff
changeset
|
2 Copyright (C) Igor Sysoev |
be54c443235a
Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents:
563
diff
changeset
|
3 Copyright (C) Nginx, Inc. |
be54c443235a
Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents:
563
diff
changeset
|
4 --> |
be54c443235a
Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents:
563
diff
changeset
|
5 |
553
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
6 <!DOCTYPE article SYSTEM "../../../dtd/article.dtd"> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
7 |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
8 <article name="Connection processing methods" |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
9 link="/en/docs/events.html" |
589 | 10 lang="en" |
755
629630df119a
Added anchors to event processing methods.
Ruslan Ermilov <ru@nginx.com>
parents:
659
diff
changeset
|
11 rev="2"> |
553
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
12 |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
13 <section> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
14 |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
15 <para> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
16 nginx supports a variety of connection processing methods. |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
17 The availability of a particular method depends on the platform used. |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
18 On platforms that support several methods nginx will normally |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
19 select the most efficient method automatically. |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
20 However, if needed, a connection processing method can be selected |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
21 explicitly with the |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
22 <link doc="ngx_core_module.xml" id="use"/> directive. |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
23 </para> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
24 |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
25 <para> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
26 The following connection processing methods are supported: |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
27 <list type="bullet"> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
28 |
755
629630df119a
Added anchors to event processing methods.
Ruslan Ermilov <ru@nginx.com>
parents:
659
diff
changeset
|
29 <listitem id="select"> |
553
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
30 <para> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
31 <literal>select</literal>—standard method. |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
32 The supporting module is built automatically on platforms that lack |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
33 more efficient methods. |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
34 The <literal>--with-select_module</literal> and |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
35 <literal>--without-select_module</literal> configuration parameters |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
36 can be used to forcibly enable or disable the build of this module. |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
37 </para> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
38 </listitem> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
39 |
755
629630df119a
Added anchors to event processing methods.
Ruslan Ermilov <ru@nginx.com>
parents:
659
diff
changeset
|
40 <listitem id="poll"> |
553
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
41 <para> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
42 <literal>poll</literal>—standard method. |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
43 The supporting module is built automatically on platforms that lack |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
44 more efficient methods. |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
45 The <literal>--with-poll_module</literal> and |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
46 <literal>--without-poll_module</literal> configuration parameters |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
47 can be used to forcibly enable or disable the build of this module. |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
48 </para> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
49 </listitem> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
50 |
755
629630df119a
Added anchors to event processing methods.
Ruslan Ermilov <ru@nginx.com>
parents:
659
diff
changeset
|
51 <listitem id="kqueue"> |
553
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
52 <para> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
53 <literal>kqueue</literal>—efficient method used on |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
54 FreeBSD 4.1+, OpenBSD 2.9+, NetBSD 2.0, and Mac OS X. |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
55 </para> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
56 </listitem> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
57 |
755
629630df119a
Added anchors to event processing methods.
Ruslan Ermilov <ru@nginx.com>
parents:
659
diff
changeset
|
58 <listitem id="epoll"> |
553
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
59 <para> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
60 <literal>epoll</literal>—efficient method used on |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
61 Linux 2.6+. |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
62 <note> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
63 Some older distributions like SuSEĀ 8.2 provide patches |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
64 that add epoll support to 2.4 kernels. |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
65 </note> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
66 </para> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
67 </listitem> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
68 |
755
629630df119a
Added anchors to event processing methods.
Ruslan Ermilov <ru@nginx.com>
parents:
659
diff
changeset
|
69 <listitem id="rtsig"> |
553
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
70 <para> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
71 <literal>rtsig</literal>—real time signals, efficient method |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
72 used on Linux 2.2.19+. |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
73 By default, |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
74 the system-wide event queue is limited by 1024 signals. |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
75 On loaded servers it may become necessary to increase this limit |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
76 by changing the <path>/proc/sys/kernel/rtsig-max</path> kernel parameter. |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
77 However, in Linux 2.6.6-mm2 this parameter is gone, and each process |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
78 now has its own event queue. |
554
ccb7451af1d8
Documented the "worker_rlimit_sigpending" directive.
Ruslan Ermilov <ru@nginx.com>
parents:
553
diff
changeset
|
79 The size of each queue is limited by <literal>RLIMIT_SIGPENDING</literal> |
659
77a3314c74a7
Avoid the uses of second person.
Ruslan Ermilov <ru@nginx.com>
parents:
589
diff
changeset
|
80 and can be changed with |
77a3314c74a7
Avoid the uses of second person.
Ruslan Ermilov <ru@nginx.com>
parents:
589
diff
changeset
|
81 <link doc="ngx_core_module.xml" id="worker_rlimit_sigpending"/>. |
553
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
82 </para> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
83 |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
84 <para> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
85 On queue overflow, nginx discards the queue and falls back to |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
86 <literal>poll</literal> connection processing method until |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
87 the situation gets back to normal. |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
88 </para> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
89 </listitem> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
90 |
755
629630df119a
Added anchors to event processing methods.
Ruslan Ermilov <ru@nginx.com>
parents:
659
diff
changeset
|
91 <listitem id="devpoll"> |
553
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
92 <para> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
93 <literal>/dev/poll</literal>—efficient method used on |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
94 Solaris 7 11/99+, HP/UX 11.22+ (eventport), IRIX 6.5.15+, |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
95 and Tru64 UNIX 5.1A+. |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
96 </para> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
97 </listitem> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
98 |
755
629630df119a
Added anchors to event processing methods.
Ruslan Ermilov <ru@nginx.com>
parents:
659
diff
changeset
|
99 <listitem id="eventport"> |
553
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
100 <para> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
101 <literal>eventport</literal>—event ports, efficient method |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
102 used on Solaris 10. |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
103 </para> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
104 </listitem> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
105 |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
106 </list> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
107 </para> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
108 |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
109 </section> |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
110 |
6330ca27a485
Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents:
diff
changeset
|
111 </article> |