Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 6864|Respuesta: 4

Optimización práctica de la concurrencia de solicitudes HTTP Nginx

[Copiar enlace]
Publicado en 16/1/2022 13:46:40 | | | |
El programa web se desarrolla con asp.net núcleo, el navegador solicita una página y el servidor debe pasar por el proxy inverso nginx al programa .NET para procesarlo, y durante la prueba de estrés, reportará un error 503:

Servicio 503 temporalmente indisponible

503 es un código de estado HTTP debido aMantenimiento temporal o sobrecarga del servidor, el servidor actualmente no puede procesar solicitudes。 Esta condición es temporal y se restaurará con el tiempo.

En términos generales, el error 503 se debe principalmente al gran número de visitas a la web, lo que resulta en un error causado por un tráfico excesivo o un gran número de concurrencias.

Según el análisis del principio del cañón, hay muchos factores que causan cuellos de botella en el rendimiento; en primer lugar, la referencia de ajuste de Linux es la siguiente:

Linux (CentOS) limita la optimización del rendimiento del servidor
https://www.itsvse.com/thread-10134-1-1.html

A través de herramientas profesionales de prueba de presión, los resultados de la prueba de presión son los siguientes:

.NET/C# Load Test NBomber Tutorial sencillo
https://www.itsvse.com/thread-9993-1-1.html



Afinación Nginx

worker_processes Configurado en Automático, de la siguiente manera:

Deja que nginx se adapte automáticamente a tus necesidades.

La configuración de los eventos es la siguiente:

Utiliza el modo epoll para aumentar el número de conexiones concurrentes, incrementar la capacidad de conexión concurrente del sistema nginx y establecer el número máximo de conexiones que pueden ser abiertas por los trabajadores al mismo tiempo. Introducción al documento:El inicio de sesión del hipervínculo es visible.

Tras la sintonización, se realiza la prueba de presión y no hay más error 503, como se muestra en la figura siguiente:


Si usas un proxy inverso nginx para reenviar a php-fpm, puedes obtener el siguiente error:

2022/01/16 16:08:01 [crítico] 968#0: *12955 open() "/alidata/www/itsvse_web/50x.html" fallido (24: Demasiados archivos abiertos), cliente: 100.116.153.2, servidor:www.itsvse.com, solicitud: "GET /forum.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "www.itsvse.com"
2022/01/16 16:08:01 [alerta] 968#0: *12956 socket() fallado (24: Demasiados archivos abiertos) al conectarse a la parte upstream, cliente: 100.116.153.109, servidor:www.itsvse.com, solicitud: "GET /forum.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "www.itsvse.com"
2022/01/16 16:08:01 [crítico] 968#0: *12956 open() "/alidata/www/itsvse_web/50x.html" fallido (24: demasiados archivos abiertos), cliente: 100.116.153.109, servidor:www.itsvse.com, solicitud: "GET /forum.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "www.itsvse.com"



Establezca los parámetros de worker_rlimit_nofile de la siguiente manera:



Documentación:El inicio de sesión del hipervínculo es visible.

(Fin)





Anterior:La diferencia y conexión entre Ubuntu, CentOS y RedHat
Próximo:Descarga de la herramienta de gestión de bases de datos de OceanBase
Publicado en 16/1/2022 21:02:14 |
Ven y aprende otra vez
Publicado en 24/1/2022 11:18:47 |
Lo aprendí, gracias
 Propietario| Publicado en 30/3/2023 10:01:36 |
Nginx:413 Entidad de solicitud demasiado grande
https://www.itsvse.com/thread-10545-1-1.html
 Propietario| Publicado en 30/3/2023 10:01:45 |
Nginx añade el protocolo HTTP/2 activado
https://www.itsvse.com/thread-10307-1-1.html
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com