<-
Apache > Serveur HTTP > Documentation > Version 2.2 > Serveurs Virtuels

Limites des descripteurs de fichiers

Langues Disponibles:  en  |  fr  |  ja  |  ko 

Quand de nombreux serveurs virtuels sont cr��s, Apache peut d�passer les limites en descripteurs de fichiers ('file descriptors', �galement appel�s gestionnaires de fichiers) si chacun des serveurs virtuels utilise ses propres fichiers journaux. Le nombre total de descripteurs de fichiers utilis�s par Apache est d'un par fichier journal, un pour chacune des autres directives de fichiers journaux, plus un nombre constant compris entre 10 et 20 pour son fonctionnement interne. Les syst�mes d'exploitation Unix limitent le nombre de descripteurs de fichiers utilisables par processus ; une valeur courante pour cette limite est de 64, et cette valeur peut le plus souvent �tre augment�e.

Apache tente d'accro�tre cette valeur limite si n�cessaire, mais sans y parvenir dans les cas suivants :

  1. Le syst�me d'exploitation ne permet pas l'utilisation d'appels syst�mes setrlimit().
  2. L'appel setrlimit(RLIMIT_NOFILE) ne fonctionne pas sur votre syst�me d'exploitation (c'est le cas sous Solaris 2.3).
  3. Le nombre de descripteurs de fichiers n�cessaires � Apache d�passe la limite physique du mat�riel.
  4. Le syst�me impose d'autres limites sur l'utilisation des descripteurs de fichiers, comme par exemple une limite sur les flux stdio, utilisables uniquement sur les descripteurs de fichiers inf�rieurs � 256. (sous Solaris 2).

En cas de probl�me, Vous pouvez :

top

�clatement des fichiers journaux

Lorsque vous choisissez d'enregistrer les informations �manant de plusieurs serveurs virtuels dans un m�me fichier journal, vous voudrez ensuite pouvoir scinder ces informations � des fins de statistiques, par exemple, sur les diff�rents serveurs virtuels. Il est possible de proc�der de la mani�re suivante :

Tout d'abord, vous devez ajouter le nom du serveur virtuel � chaque entr�e du journal. Ceci se param�tre au moyen de la directive LogFormat et de la variable %v. Ajoutez cette variable au d�but de la cha�ne de d�finition du format de journalisations :

LogFormat "%v %h %l %u %t \"%r\" %>s %b" vhost
CustomLog logs/multiple_vhost_log vhost

Cette configuration va provoquer la cr�ation d'un fichier de journalisation au format standard (CLF : 'Common Log Format'), mais dont chaque ligne d�butera par le nom canonique du serveur virtuel (sp�cifi� par la directive ServerName). (Voir Formats de journalisation personnalis�s pour d'autres informations sur la personnalisation des fichiers journaux.)

Au moment de s�parer les informations du fichier journal en un fichier par serveur virtuel, le programme split-logfile peut �tre utilis�. Ce programme peut �tre trouv� dans le r�pertoire support de la distribution d'Apache.

Ex�cutez ce programme au moyen de la commande :

split-logfile < /logs/multiple_vhost_log

Une fois ex�cut� avec le nom du fichier contenant tous les journaux, ce programme va g�n�rer un fichier pour chacun des serveurs virtuels qui appara�t dans le fichier d'entr�e. Chaque fichier en sortie est nomm� nomduserveur.log.

Langues Disponibles:  en  |  fr  |  ja  |  ko