Consideraciones acerca del servidor Web

Aunque el servidor web es una tecnología plenamente desarrollada, se puede ajustar para obtener un mejor rendimiento, especialmente en sitios web grandes. Este apartado incluye las consideraciones comunes acerca del rendimiento para todos los servidores web y es independiente del sistema operativo.

Escuchas de hebras o procesos

Si el servidor web sólo recibe solicitudes dinámicas para el servidor de aplicaciones, el número de escuchas HTTP sólo debe ser ligeramente superior al número de hebras definidas en el servidor de aplicaciones. En HCL Commerce, donde el contenido estático (es decir, archivos de imagen como por ejemplo formato GIF y JPG) lo sirve el servidor web en lugar del servlet de servicio de archivos, se deben configurar más escuchas para lograr un rendimiento óptimo.

Los parámetros siguientes controlan el número de hebras y procesos en el archivo de configuración httpd.conf para IBM HTTP:
  • ThreadLimit
  • ServerLimit
  • StartServers
  • MaxClients
  • MinSpareThreads
  • MaxSpareThreads
  • ThreadsPerChild
  • MaxRequestsPerChild
Para obtener más información sobre cómo cambiar estos parámetros, consulte IBM HTTP Server Performance Tuning.

despacho de pedidos de imágenes

Las imágenes estáticas se almacenan en el servidor web y se sirven desde el servidor web a medida que se accede a las páginas asociadas. Para implementaciones que tienen muchas imágenes, se recomienda distribuir estas imágenes entre varios directorios, para reducir el tiempo de exploración de sistema operativo, mientras el servidor web sirve las imágenes. Basándonos en nuestra experiencia, no se deberán poner más de 50.000 imágenes en un directorio de imágenes.

Anotación cronológica

Los servidores web permiten diferentes niveles de anotación cronológica para diferentes conjuntos de información. Aunque esta anotación cronológica es útil para diagnosticar problemas, tiene un impacto significativo en el rendimiento en sitios web de gran volumen. Para asegurar un mejor rendimiento, conserve un formato simple de anotación cronológica y limítelo al informe de errores de servidor.

En IBM HTTP, el parámetro LogFormat controla cuánta información se vuelca en los archivos de registro. Para obtener más información sobre cómo cambiar estos parámetros, consulte IBM HTTP Server Performance Tuning.

Acción de mantener activo

En el protocolo HTTP, cada petición crea una conexión de socket con el servidor y envía una petición. Cuando el servidor responde, crea otra conexión de socket para responder al cliente. Este concepto es simple de comprender pero lento desde la perspectiva del rendimiento. Sería ideal si se pudiera utilizar la misma conexión para la petición y la respuesta. Aquí es donde se utiliza la función de la acción de mantener activo, para permitir al servidor gestionar conexiones largas. El número máximo de solicitudes que un navegador puede realizar en una conexión larga y el tiempo máximo que la conexión puede permanecer activa son parámetros configurables.

De forma predeterminada, la acción de mantener activo está activada para la mayoría de los servidores web. Los valores de los parámetros que están relacionados con la acción de mantener activo dependen de las características del tráfico de sitio web. Es necesario ajustar el número máximo de conexiones de acción de mantener activo y de valores de tiempo de espera de acción de mantener activo de forma que estén equilibradas las concesiones mutuas entre rendimiento (evitar la creación de conexiones de socket) y recursos (la conexión de acción de mantener activo no se puede volver a utilizar para otra conexión hasta que caduque el tiempo de espera).

Hay tres parámetros que controlan el número de conexiones de socket:
  • KeepAlive
  • MaxKeepAliveRequests
  • KeepAliveTimeout
Para obtener más información sobre cómo cambiar estos parámetros, consulte IBM HTTP Server Performance Tuning.