Nginx-Ereignismodul-Direktive
Freigeben: 2016-08-10 08:48:38
Original
1017 Leute haben es durchsucht
accept_mutexSyntax: accept_mutex [ on |. off ]Standard: onnginx verwendet Verbindungs-Mutex lock führt sequentielle Accept()-Systemaufrufe aus. 🎜>Standard: 500 ms
Wenn ein Prozess keinen Mutex hat, wird er mindestens um wie lange verzögert. Standardmäßig beträgt die Verzögerung 500 ms. debug_connectionSyntax: debug_connection [ip |.]Standard: keine
Dieser Befehl kann die IP angeben, die zum Drucken von Debug-Protokollen verwendet wirdZum Beispiel devpoll_changes devpoll_eventskqueue_eventsepoll_events<span>error_log</span> /var/log/nginx/errors;
<span>events</span><span>{</span><span>debug_connection</span><span>192.168</span><span>.1</span><span>.1</span>;
<span>}</span>
Nach dem Login kopieren
Syntax:
devpoll_changes Diese Parameter geben die Anzahl der Ereignisse an, die auf die angegebene Weise an oder vom Kernel übergeben werden. Der Standardwert für Devpoll beträgt 32, der Rest beträgt 512. multi_acceptSyntax: multi_accept [ on |. off ]
Standard: offGibt an, ob Accept() so oft wie möglich aufgerufen werden soll, nachdem Nginx eine neue Verbindung erhalten hat.
rtsig_signoSyntax: rtsig_signomulti_accept
Nginx wird nach dem rtsig-Modus verwendet aktiviert Zwei Signale, dieser Befehl gibt die erste Signalnummer an und die zweite Signalnummer ist die erste plus 1Der Standardwert von rtsig_signo ist SIGRTMIN+10 (40). Syntax: rtsig_ overflow_*Diese drei Anweisungen beziehen sich auf die Behandlung des rtsig-Warteschlangenüberlaufs. Wenn die rtsig-Warteschlange überläuft, löscht Nginx die Warteschlange und wechselt zwischen poll() und rtsig> Um neue Überläufe zu verhindern, wird rtsig gleichzeitig die Warteschlangenelemente regelmäßig reduzieren. Wenn der Überlauf verarbeitet wird, wechselt es zurück zu rtsig rtsig_overflow_events gibt die Anzahl der Poll-Monitore an, der Standardwert ist 16
rtsig_overflow_test Nachdem rtsig angegeben hat, wie viele Ereignisse die Abfrage behandelt, werden die Warteschlangenelemente reduziert. Der Standardwert ist 32
rtsig_overflow_threshold Diese Option ist nur in Linux 2.4 gültig. Diese Option gibt an, wie viel der Warteschlange gefüllt wird, bevor die Warteschlangenelemente reduziert werden.
Verwenden Sie Verwenden Sie [ rtsig |. /dev/poll ] Standard:Wenn bei mehr als ein Ereignismodell angegeben ist, können Sie eines davon festlegen, um Nginx mitzuteilen, welches Ereignismodell verwendet werden soll. Standardmäßig findet Nginx unter das am besten geeignete Ereignismodell für das System.
./configure
./configure
nginx-Ereignismodelle umfassen die folgenden select – die Standardmethode. Dies ist die Standardeinstellung zur Kompilierungszeit, wenn es für die aktuelle Plattform keine effizientere Methode gibt. Sie können dieses Modul mit den Konfigurationsparametern und aktivieren oder deaktivieren.
--with-select_module
Umfrage – Standardmethode. Dies ist die Standardeinstellung zur Kompilierungszeit, wenn es für die aktuelle Plattform keine effizientere Methode gibt. Sie können dieses Modul mit den Konfigurationsparametern --without-select_module
und aktivieren oder deaktivieren.
--with-poll_module
kqueue – Effiziente Methode, verwendet in FreeBSD 4.1+, OpenBSD 2.9+, NetBSD 2.0 und MacOS X. Die Verwendung von kqueue auf MacOS X-Systemen mit zwei Prozessoren kann zu einem Kernel-Absturz führen. --without-poll_module
epoll – eine effiziente Methode, die in Linux-Kernel-Versionen 2.6 und späteren Systemen verwendet wird. In einigen Distributionen, wie zum Beispiel SuSE 8.2, gibt es einen Patch zur Unterstützung von Epoll im 2.4-Kernel. rtsig – ausführbares Echtzeitsignal, verwendet in Systemen mit Linux-Kernel-Version 2.2.19 oder höher. Standardmäßig können im gesamten System nicht mehr als 1024 POSIX-Echtzeitsignale (in der Warteschlange) angezeigt werden. Diese Situation ist für stark ausgelastete Server ineffizient; daher ist es notwendig, die Warteschlangengröße durch Anpassen des Kernel-Parameters zu erhöhen. Aber ab der Linux-Kernel-Version 2.6.6-mm2,
Dieser Parameter wird nicht mehr verwendet und es gibt für jeden Prozess eine separate Signalwarteschlange. Die Größe dieser Warteschlange kann mit dem Parameter RLIMIT_SIGPENDING angepasst werden. Wenn diese Warteschlange zu überlastet ist, verlässt Nginx sie und beginnt mit der -Methode, um Verbindungen zu verarbeiten, bis die Normalität zurückkehrt.
/proc/sys/kernel/rtsig-max
/dev/poll – effiziente Methode, verwendet auf Solaris 7 11/99+, HP/UX 11.22+ (Eventport), IRIX 6.5.15+ und Tru64 UNIX 5.1A+.poll
Eventport - Effiziente Methode für Solaris 10. Um Kernel-Abstürze zu verhindern, ist die Installation dieses Sicherheitspatches erforderlich.
worker_connectionsSyntax: worker_connections numberMaximale Anzahl von Verbindungen pro Prozess
Die maximale Anzahl von Parallelitäten kann über worker_connections und worker_proceses berechnet werden, dh die maximale Anzahl von Parallelitäten = work_connections
x work_process
Urheberrechtserklärung: Dieser Artikel ist ein Blog Dies ist ein Originalartikel und darf nicht ohne die Erlaubnis des Bloggers reproduziert werden.
Das Obige stellt die Anweisungen für das Nginx-Ereignismodul einschließlich der relevanten Inhalte vor. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31