2012-05-25 10 views
12

Mi pregunta es cuál es la cantidad máxima de usuarios que Apache webserver 2.2.2 puede manejar, tengo un sitio web que a veces recibe más de 300 usuarios simultáneos, sin embargo la configuración predeterminada de apache está configurada en un máximo de 150, sé que puedo aumentar esto valor, sin embargo, si lo que hago lo temo que yo podría correr sobre la capacidad que Apache puede manejar, mi servidor es bastante potente con procesador AMD núcleo 8 quad con la memoria 16 GMnúmero máximo de usuarios del servidor web que apache puede manejar?

  1. ¿Cómo se determina el número de solicitudes que Apache puede manejar,

  2. En general, las opciones/configuraciones para un mejor optimizado para el servidor se carga. es decir, desactivar mantener viva .etc

  3. Al aumentar el tamaño máximo del usuario, MySql se come la mayor parte de la potencia del procesador con ir más del 150% de la CPU a veces .... no sé por qué ..

¿Algún experto?

Respuesta

0

Consulte esta guía para obtener una visión general: http://www.devside.net/articles/apache-performance-tuning

Es todo sobre todo de la MPM Apache que ha seleccionado (rosca basado o basados ​​proceso) y su configuración.

Luego tiene que coincidir con la configuración KeepAlive (utilizo un MPM basado en subprocesos y, por lo tanto, configuro KeepAlives en On y durante 3 segundos).

¿Está utilizando Apache en Linux o Windows? ¿Qué MPM?

+0

gracias por la respuesta que estoy usando bajo centos 6.0 – mahen3d

7

Apache viene con 40-100 hilos máximos. Se puede aumentar para permitir que se manejen más hilos al mismo tiempo.

La aplicación debe controlarse antes de realizar cambios en ella. En función de la respuesta, intente cambiar "ThreadsPerChild" y "AcceptThreads" en consecuencia.

La cantidad predeterminada de "máximo" número de subprocesos suele ser suficiente; sin embargo, puede haber condiciones en las que este número deba aumentarse. El uso de subprocesos puede ser monitoreado. Para supervisar, inicie la instancia administrativa, seleccione el servidor HTTP en cuestión y seleccione Estadísticas del servidor en tiempo real en la parte inferior izquierda.

If Idle Threads está cerca o en cero, esto es un problema. Siempre que Idle Threads sea cero, no se pueden establecer nuevas conexiones con el cliente. Los nuevos clientes se pondrán en estado de espera hasta que haya un hilo disponible. Nuestra recomendación para esta condición es agregar la directiva ThreadsPerChild con un valor aumentado, aproximadamente el doble del valor actual si estaba en el rango de 40 a 100, o más 50, si era superior a 100. El valor mínimo requerido (para el máximo parámetro) solo se puede encontrar por prueba y error. Si después de aumentar el valor, el servidor funciona sin problemas, detenga la prueba.

(source)

2

Recomendaciones

Utilice Keep Alive, ya que aumentará el rendimiento de su servidor. Inhabilite la configuración de Mantener vivo solo cuando hay un firewall entre la web o la aplicación. O está enfrentando problemas de caída del paquete/mensaje de restablecimiento de la conexión.

  • Puede aumentar el límite máximo del cliente, pero el límite dependerá totalmente de la configuración de su servidor. En promedio, cada hilo de Apache tomará, digamos, 25 MB, luego, en ese caso, debe mantener el valor máximo del cliente en (MAX * carga en cada hilo)/(RAM asignada * hilos). Mantenga siempre esta relación en 1/2.
  • Puede aumentar sus usuarios a cualquier número como se explicó anteriormente aumentando los límites máximos de cliente y servidor de sus sistemas.
  • Defina siempre los límites de min-maxspare o min-maxthread.
  • Un punto muy importante si no puede aumentar el límite de cliente máximo, simplemente aumente el límite de retraso de escucha, tendrá las solicitudes adicionales en la cola, lo que a su vez evita que la conexión caiga.
+0

traté de usar el keep-alive, pero encontré que disminuye significativamente el tiempo de respuesta del servidor, fue el consejo de alguien más, para desactivar el mantenimiento. viva. – mahen3d

1

Deberá editar el archivo httpd.h para permitir un maxclients mayor después del límite codificado de 256 y luego recompilar el programa httpd. Esto se sugiere en el archivo de configuración para httpd.

Cuestiones relacionadas