Cuando Linux Nginx alcanzó un alto número de concurrentes, sockets TCP TIME_WAIT menudo alcanzó el número dos, treinta mil para que el servidor puede ser fácilmente arrastrado muertos. De hecho, podemos simplemente modificando los parámetros del núcleo de Linux, se puede reducir el número de sockets de servidor Nginx TIME_WAIT, lo que aumenta el rendimiento del servidor Nginx concurrencia. vi /etc/sysctl.conf agregue las siguientes líneas: net.ipv4.tcp_fin_timeout = 30 = 1200 net.ipv4.tcp_keepalive_time
net.ipv4.tcp_syncookies = 1 = 1 net.ipv4.tcp_tw_reuse net.ipv4. tcp_tw_recycle = 1 net.ipv4.ip_local_port_range = 1024 65000 net.ipv4.tcp_max_syn_backlog = 8192 = 5000 net.ipv4.tcp_max_tw_buckets Breve descripción: net.ipv4.tcp_syncookies = 1 indicarán en SYN cookies. Cuando se produce el desbordamiento de la cola SYN, está habilitado para procesar las galletas, una pequeña cantidad puede prevenir ataques SYN, por defecto en cero desactiva; net.ipv4.tcp_tw_reuse = 1 indica en su reutilización. tomas de tiempo de espera permiten re-utilizados para la nueva conexión TCP, el valor predeterminado es cero desactiva; net.ipv4.tcp_tw_recycle = 1 representa la rápida recuperación de las tomas de tiempo de espera de conexión TCP abiertas, el valor predeterminado es 0, apagado. Net.ipv4.tcp_fin_timeout = 30 significa que si el extremo local solicita que se cierre el socket, este parámetro determina cuándo permanecerá en el estado FIN-WAIT-2. Net.ipv4.tcp_keepalive_time = 1200 Indica la frecuencia con la que TCP envía mensajes de keepalive cuando keepalive está habilitado. El valor predeterminado es 2 horas y se cambia a 20 minutos. Net.ipv4.ip_local_port_range = 1024 65000 Indica el rango de puertos utilizados para las conexiones salientes. Por defecto es muy pequeño: 32768 a 61000, cambiado a 1024 a 65000. net.ipv4.tcp_max_syn_backlog = 8192 indica la longitud de la cola SYN, el valor predeterminado es 1024, el aumento de la longitud de la cola es 8,192, el número de conexiones de red puede acomodar más de espera para una conexión. net.ipv4.tcp_max_tw_buckets = 5000 indica que el sistema mientras se mantiene el número máximo de sockets TIME_WAIT, si hay más de este número, zócalos TIME_WAIT se borrarán inmediatamente e imprimir un mensaje de advertencia. El valor predeterminado es 180000, que se cambia a 5000. Para Apache, Nginx y otros servidores, los parámetros de las últimas líneas pueden reducir el número de sockets TIME_WAIT, pero para Squid, el efecto no es excelente. Este parámetro controla el número máximo de sockets TIME_WAIT, lo que evita que el servidor Squid sea arrastrado por un gran número de sockets TIME_WAIT. Echo " ====================== ejecutan los siguientes comandos para validar la configuración: ================== ======= " #Cambie los parámetros del kernel de Linux, ¡el comando surte efecto inmediatamente! /sbin /sysctl -p Optimización de Nginx Use FastCGI Cache fastcgi_cache TEST para habilitar la caché de FastCGI y darle un nombre. Personalmente, sentir que abrir la memoria caché es muy útil, puede reducir efectivamente la carga de la CPU y evitar errores 502. niveles fastcgi_cache_path /usr /local /nginx /fastcgi_cache = 1: 2 keys_zone = TEST: 10m inactivo = 5m; Este comando especifica un FastCGI nivel de la estructura de directorio de caché camino, región clave tiempo de almacenamiento y un tiempo inactivo eliminación
otra descripción
Nginx por Igor Sysoev de Rusia visitó la segunda desarrollo Rambler.ru sitio, que ha estado funcionando el sitio durante más de dos años y medio. Igor publica el código fuente como una licencia BSD de clase.
En el caso de conexiones concurrentes altas, Nginx es una buena alternativa al servidor Apache. Nginx también se puede utilizar como un servidor de equilibrio de carga de 7 capas. De acuerdo con los resultados de mi prueba, Nginx 0.6.31 + PHP 5.2.6 (FastCGI) puede soportar más de 30,000 conexiones concurrentes, lo que equivale a 10 veces la de Apache en el mismo entorno.
En mi experiencia, el servidor Apache + 4 GB de RAM (modo prefork) por lo general sólo puede manejar 3.000 conexiones simultáneas, porque van a ocupar más de 3 GB de memoria, tiene 1 GB de memoria reservada para el sistema. He tenido dos servidores Apache porque MaxClients configuración en el archivo de configuración en 4000, cuando Apache conexiones simultáneas llegan a 3800, lo que resulta en la memoria del servidor y espacio de intercambio con un colapso total.
Y esto + PHP 5.2.6 servidor Nginx 0.6.31 (FastCGI) a 30.000 conexiones simultáneas, proceso abierto 10 Nginx consume memoria 150 millones (15M * 10 = 150 millones), abrió 64 El proceso php-cgi consume 1280M de memoria (20M * 64 = 1280M), más la memoria consumida por el propio sistema, que consume menos de 2GB de memoria. Si la memoria del servidor es pequeña, solo puede abrir 25 procesos php-cgi, por lo que la memoria total consumida por php-cgi es de solo 500M.
Los ahorros de costos actuales se han convertido en un problema que las empresas deben enfrentar. Si
Introducción a Putty Putty es una herramienta de inicio de sesión remota que le
No hay duda de que MDaemon, desarrollado por Alt-n en los Estados Unidos, es un excelente software d
Cualquier persona que sepa sobre la red sabe que se pueden usar tarj
¿Por qué elegir el servidor Blade
Ecuación de ahorro de energía de virtualización de servidores
¿Puede la virtualización de servidores realmente ahorrar el costo de las pymes?
Optimización del rendimiento de IIS
¿El espacio de prueba admite el componente XMLHTTP?
Diagrama completo de la instalación del servidor IBM HTTP Server
Algunas de las mejores prácticas para las copias de seguridad relacionadas con el servidor
Caso de estudio: Fantasy Westward Journey Server Optimization
Después de volver a instalar el dominio y el servidor, ¿pueden los usuarios ver el correo?
IIS7 /iis7.5 solución de pseudoestático y de error de espacio
El área de búsqueda de la barra de búsqueda de WinXP Explorer aparece fondo gris
Buscando el huevo oculto en el teclado virtual del sistema Windows 8
En el sistema de Win7, cómo instalar una impresora de color virtual PDF?
¿Cómo impide el sistema win7 que las páginas web reproduzcan música de fondo?
Resolver la papelera de reciclaje de Win2008 no se puede eliminar el error
Windows10 Build 10525 actualiza el contenido y comienza atlas
Método de partición del disco duro de Windows 7
[Video] Win10 Mobile10536.1004 versión de vista previa de la experiencia
Las cinco preguntas que el novato en el servidor de la carretera debe entender