Optimisation de l'utilisation de la mémoire dans Exchange Server 2003

 

Dernière rubrique modifiée : 2005-05-25

Si vous avez au moins 1 gigaoctet (Go) de mémoire physique (RAM) sur un serveur exécutant Microsoft Exchange Server 2003, vous devez veiller à ce qu'Exchange 2003 puisse utiliser efficacement cette mémoire. Indépendamment de la configuration matériel, du nombre de bases de données et du nombre d'utilisateurs sur le serveur, le processus de banque d'informations Exchange (Store.exe) dans Exchange Server 2003 présente une capacité de mémoire finie qu'il peut adresser. Cette capacité constitue ce qu'il est convenu d'appeler l'espace d'adresse virtuelle. Dans la plupart des scénarios, l'utilisation de cet espace d'adresse virtuelle pour la banque d'informations détermine les performances et l'évolutivité globales de vos serveurs de boîtes aux lettres Exchange Server 2003. Pour les petits et moyens serveurs, Exchange Server 2003 recherche automatiquement le meilleur équilibre. Toutefois, pour les grands serveurs, il peut s'avérer avantageux d'ajuster manuellement une partie ou la totalité des paramètres de réglage détaillés ci-dessous.

Analyse de l'utilisation de la mémoire

L'Observateur d'événements ainsi que les Journaux et alerte de performance permettent d'analyser les problèmes de mémoire virtuelle sur un serveur Exchange. Dans le journal des applications, un avertissement indiquant l'ID d'événement 9582 apparaît lorsque la taille du plus grand bloc de mémoire libre décroît jusqu'à 32 Mo. Si vous recevez cet avertissement, vous devez redémarrer le processus de la banque d'informations Exchange à la prochaine occasion. Si le plus grand bloc descend jusqu'à 16 Mo, une erreur indiquant l'ID d'événement 9582 apparaît de nouveau ; cette erreur signifie que le serveur risque de subir une défaillance et que vous devez le redémarrer à la prochaine occasion. Une absence de réaction à ces événements peut provoquer des interruptions de la remise des messages et des échecs de la conversion IMAIL (ID d'événement 12800).

Pour obtenir des instructions détaillées, voir la rubrique Procédure d'analyse de l'utilisation de la mémoire sur un serveur Exchange.

En présence de signes d'épuisement de l'espace d'adresse virtuelle d'un serveur, vous devez ajuster les paramètres suivants. Si ces paramètres ne sont pas optimisés pour Exchange, l'événement 9665 apparaît dans l'Observateur d'événements Application.

Événement 9665

Exchange vérifie si la configuration de la mémoire est optimale lors du démarrage du processus de la banque d'informations. Si la configuration de la mémoire nécessite une optimisation, l'événement 9665 apparaît dans l'Observateur d'événements. Ce message apparaît dans les circonstances suivantes :

  • Le serveur exécute Windows 2000 Server et la valeur dans le Registre n'est pas comprise entre 24 000 et 31 000.
  • Le serveur possède au moins 1 Go de mémoire et n'a pas le commutateur /3GB.
  • Le serveur exécute Windows Server 2003, possède au moins 1 Go de mémoire et le commutateur /3GB est réglé, mais le commutateur /USERVA est manquant ou n'est pas défini sur 3030.

Si vous pensez que la configuration de votre serveur est optimale et voulez empêcher la consignation de l'événement 9665, vous pouvez supprimer la consignation de cet événement. Pour obtenir des instructions détaillées, voir la rubrique Procédure de suppression d'un événement de notification de configuration de la mémoire.

Ajout du commutateur /3GB

Par défaut, Windows 2000 Advanced Server et Windows Server 2003 allouent 2 Go d'espace d'adresse virtuelle aux processeurs de mode utilisateur tels que Store.exe. Si un serveur possède au moins 1 Go de mémoire physique, ajoutez le commutateur /3GB dans le fichier Boot.ini pour augmenter l'espace d'adresse virtuelle.

Pour obtenir des instructions détaillée sur la procédure de définition du commutateur /3GB, voir la rubrique Procédure de définition du commutateur de démarrage /3GB dans Windows.

Définition du commutateur /USERVA et de la valeur de Registre SystemPages

Si le serveur exécute Windows 2000, vous devez définir la valeur de Registre SystemPages entre 24 000 et 31 000. Si le serveur exécute Windows Server 2003, affectez la valeur zéro à SystemPages et ajoutez le commutateur de démarrage /USERVA=3030 au fichier Boot.ini. Ces valeurs autorisent davantage d'entrées en table des pages système sur le serveur, ce qui est essentiel pour les systèmes dont la mémoire est étendue pour faire face à la demande.

Le commutateur /USERVA est une nouveauté dans Windows Server 2003. Il est destiné à améliorer le contrôle de la division de l'espace d'adresse virtuelle entre les processus en mode utilisateur et ceux en mode noyau. Le commutateur /USERVA doit être utilisé uniquement pour des applications qui le prennent en charge, telles qu'Exchange Server 2003, et avec les valeurs spécifiques supportées par ces applications. Lors de son utilisation sur des systèmes Exchange Server 2003, /USERVA doit toujours être égal à 3030 (par exemple, /USERVA=3030). Cette valeur entraîne l'allocation de 40 Mo supplémentaires au système d'exploitation et permet d'ajouter un nombre accru d'utilisateurs sans consommer toutes les ressources système disponibles.

Pour des instructions détaillées sur la procédure de configuration de la valeur de Registre SystemPages dans Windows 2000, voir la rubrique Procédure d'augmentation des PTE système dans Windows 2000.

Pour obtenir des instructions détaillées pour la configuration du commutateur de démarrage /USERVA, voir la rubrique Procédure de définition du commutateur de démarrage /USERVA dans Windows.

Définition de la valeur de Registre HeapDeCommitFreeBlockThreshold

La valeur de Registre HeapDeCommitFreeBlockThreshold contrôle l'espace libre requis pour que le gestionnaire de segments de mémoire désaffecte (ou libère) un bloc de mémoire. Sa valeur par défaut est zéro, ce qui signifie que le gestionnaire de segments de mémoire libère chaque page de 4 Ko qui devient disponible. Avec le temps, l'espace d'adresse virtuelle peut se fragmenter. Sur les serveurs dont la mémoire physique est égale ou supérieure à 1 Go, vous devez affecter à cette clé de Registre une valeur plus élevée pour réduire la fragmentation.

Pour obtenir des instructions détaillées sur la procédure de définition de la valeur de Registre HeapDeCommitFreeBlockThreshold, voir la rubrique Procédure de définition de la valeur de Registre HeapDeCommitFreeBlockThreshold.