Conseils pour l'optimisation du plug-in de serveur Web
Conseils importants pour l'optimisation du plug-in de serveur Web incluant les moyens d'équilibrer la charge de travail et améliorer les performances dans un environnement soumis à une charge élevée. L'équilibrage des charges de travail entre serveurs d'applications dans un réseau avec un plug-in de serveur Web améliore les temps de réponse.
Ce produit utilise la fonctionnalité native WLM (Workload Management) de
z/OS pour équilibrer de manière
dynamique la charge de travail des serveurs d'applications définis sur
z/OS HTTP Server, Version 5.3 ou
IBM® HTTP Server for
WebSphere Application Server
sous
z/OS. Voir la publication
z/OS HTTP Server Planning,
Installing and Using pour plus d'informations sur
z/OS HTTP Server, Version 5.3. Ce centre de documentation contient des informations sur IBM HTTP Server for WebSphere Application Server on z/OS.
![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
Equilibrage des charges de travail
Dans des conditions normales d'utilisation, le nombre de connexions en attente de traitement par un serveur d'applications a tendance à augmenter. Par conséquent, l'équilibrage des charges de travail entre serveurs d'applications dans un réseau avec un plug-in de serveur Web améliore les temps de réponse.
- Accédez à .
- Dans la section Propriétés supplémentaires, cliquez sur .
- Sélectionnez pour la zone Nombre maximal de connexions pouvant être gérées par le serveur d'applications.
- Indiquez le nombre maximal de connexions admises dans la zone Connexions.
- Plus cliquez sur et .
Quand cette valeur est atteinte avec l'établissement de connexions, le plug-in passe ce serveur d'applications pour choisir le prochain disponible. A défaut de serveurs d'applications disponibles, un code réponse HTTP 503 est retourné au client. Ce code indique que le serveur est incapable de gérer la demande en raison d'une surcharge temporaire ou d'une opération de maintenance.
- Un cluster comporte dix serveurs d'applications.
- Tous ces serveurs d'applications hébergent les mêmes applications (Application_1 et Application_2).
- Ce cluster de serveurs d'applications se trouve derrière cinq serveurs IBM HTTP.
- Les serveurs IBM HTTP reçoivent les demandes par un équilibreur de charge.
- Application_1 répond à une demande en 60 secondes environ.
- Application_2 répond à une demande en une seconde environ.
Selon ce schéma de réception, toutes les demandes envoyées à Application_1 peuvent être transférées à deux serveurs d'applications, Appsvr_1 et Appsvr_2. Si la vitesse de réception est supérieur à celle du traitement, le nombre de demandes en attente de réacheminement vers Appsvr_1 et Appsvr_2 risque d'augmenter.
Ceci s'explique par le fait que Appsvr_1 et Appsvr_2 sont trop occupés pour traiter des demandes supplémentaires. Dans une telle situation de surcharge, le retour à la normale prend généralement du temps.
Dans cet exemple, si vous souhaitez prendre en charge 2500 et utiliser les serveurs d'applications de façon optimale, fixez le nombre maximal de connexions sur 50. (Cette valeur est obtenue en divisant le nombre de connexions par le produit du nombre de serveurs d'applications et du nombre de serveurs Web, soit 2500/(10x5)=50 dans cet exemple.)
La limitation du nombre de connexions pouvant être établies avec un serveur d'applications s'applique mieux aux serveurs Web qui utilisent un unique processus à unités d'exécution multiples pour traiter les demandes.
IBM HTTP server
utilise un unique processus à unités d'exécution multiples pour traiter les demandes. Aucune modification de configuration n'est
nécessaire.
IBM HTTP Server utilise généralement de multiples processus à unités d'exécution multiples pour traiter les demandes. Attribuez
les valeurs suivantes aux propriétés du fichier de configuration du serveur Web (httpd.conf) pour éviter
qu'IBM HTTP
Server utilise plus d'un processus pour traiter les demandes.
ServerLimit 1 ThreadLimit 1024 StartServers 1 MaxClients 1024 MinSpareThreads 1 MaxSpareThreads 1024 ThreadsPerChild 1024 MaxRequestsPerChild 0
Amélioration des performances dans un environnement très sollicité
Si
vous utilisez les paramètres par défaut d'un système Microsoft Windows dans un environnement
très sollicité, il se peut que le plug-in du serveur Web soit confronté à des problèmes de performances. Pour éviter ces problèmes,
envisagez l'optimisation du paramètre TCP/IP pour ce système d'exploitation. Ce travail passe par la configuration de TcpTimedWaitDelay et de MaxUserPort.
- Dans le Registre Windows, recherchez :
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\tcpip\Parameters\TcpTimedWaitDelay
Si cette entrée n'existe pas dans le Registre Windows , créez-la en la définissant comme élément DWORD. - Associez-lui une valeur en secondes comprise de 30 à 300. (Une valeur de 30 est recommandée.)
- Dans le Registre Windows, recherchez :
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\tcpip\Parameters\MaxUserPort
Si cette entrée n'existe pas dans le Registre Windows , créez-la en la définissant comme élément DWORD. - Définissez le nombre maximal de ports sur une valeur de 5000 à 65534. (Une valeur de 65534 est recommandée.)
Voir le site Web Microsoft pour plus d'informations sur ces paramètres.