Le nombre de threads de boîte aux lettres et de catégoriseur dépasse la limite recommandée

[Cette rubrique est destinée à résoudre un problème spécifique signalé par l'outil Exchange Server Analyzer Tool. Ne l'appliquez qu'à des systèmes sur lesquels l'outil Exchange Server Analyzer Tool a été exécuté et qui ont rencontré ce problème spécifique. L'outil Exchange Server Analyzer Tool, disponible sous forme de téléchargement gratuit, collecte à distance des données de configuration de chaque serveur de la topologie et les analyse automatiquement. Il génère un rapport qui détaille les problèmes de configuration importants, les problèmes potentiels et les paramètres du produit qui ne sont pas définis par défaut. En suivant ces recommandations, vous pouvez accroître les performances, l'évolutivité, la fiabilité et la disponibilité. Pour plus d'informations sur l'outil ou pour télécharger les versions les plus récentes, consultez la rubrique sur les analyseurs Microsoft Exchange à l'adresse https://go.microsoft.com/fwlink/?linkid=34707.]  

Dernière rubrique modifiée : 2010-04-01

L'outil Microsoft Exchange Best Practices Analyzer examine les processus en cours d'exécution sur les serveurs de transport Exchange 2007. Cet examen inclut les serveurs exécutant le rôle serveur de transport Hub et le rôle serveur de transport Edge.

Exchange Best Practices Analyzer détermine le nombre de threads de travail que le pilote de banques d'informations utilise pour la remise aux boîtes aux lettres (MaxConcurrentMailboxDeliveries) et le nombre de threads que le composant catégoriseur utilise.

Si la somme des threads de pilote de banque d'informations et de catégoriseur dépasse 80 pour cent de la limite de pool de threads CLR (Common Language Runtime) Microsoft .NET, l'analyseur génère un message d'avertissement.

Une limite de supérieure de 80 pour cent d'utilisation du pool de threads CLR pour la boîte aux lettres et du thread du catégoriseur est recommandée. Si le serveur dépasse cette limite, vous risquez de rencontrer une baisse de performances sur le serveur. Plus spécifiquement, si le paramètre MaxConcurrentMailboxDeliveries est défini sur une valeur élevée telle que 100 ou supérieure, le serveur de transport risque d'être confronté à un manque de threads catégorisés. Dans ce scénario, vous risquez de rencontrer des problèmes de livraison de messages dans l'environnement Exchange.

Le catégoriseur est un composant de transport Exchange qui traite les messages entrants. Il détermine la manière de remettre les messages sur la base des informations relatives aux destinataires. Après que le catégoriseur a extrait les informations relatives au destinataire, il applique des stratégies, route les messages et effectue une conversion de contenu basée sur celles-ci.

Un serveur de transport Edge Exchange 2007 utilise le catégoriseur pour router les messages vers la destination appropriée. Un serveur de transport Hub Exchange 2007 utilise le catégoriseur pour développer les listes de distribution et identifier des destinataires alternatifs ou des adresses de transfert.

Le pilote de banque d'informations sur le serveur de transport Hub remet les messages échangés avec les serveurs de boîtes aux lettres. Le paramètre MaxConcurrentMailboxDeliveries spécifie le nombre maximal de threads de remise que le serveur de transport Hub concerné peut avoir ouverts simultanément pour la remise de messages. La valeur par défaut du paramètre MaxConcurrentMailboxDeliveries est 30. Généralement, le pilote de banque d'informations conserve des threads pour des périodes plus longues durant le processus de remise de messages. Ainsi, si le paramètre MaxConcurrentMailboxDeliveries est défini sur une valeur élevée, il se peut que des threads du pool de threads soient indisponibles pour le service d'autres demandes.

Pour résoudre ce problème, utilisez la cmdlet Set-TransportServer pour configurer une valeur inférieure pour le paramètre MaxConcurrentMailboxDeliveries. Cette valeur doit être telle que la somme des threads du pilote de banque d'informations et du catégoriseur ne dépasse pas le maximum recommandé de 80 pour cent du pool de threads CLR.

noteRemarque :
Pour déterminer la taille du pool de threads CLR disponible, multipliez le nombre de processeurs logiques sur le serveur par 25.

Configuration du paramètre MaxConcurrentMailboxDeliveries

  1. Sur le serveur de transport Hub, démarrez l'environnement de ligne de commande Exchange Management Shell.

  2. Pour récupérer la valeur actuelle de MaxConcurrentMailboxDeliveries, exécutez la commande suivante. Remplacez <servername> par le nom du serveur Exchange.

    Get-TransportServer <servername> | format-list
    
  3. Pour définir une nouvelle valeur de MaxConcurrentMailboxDeliveries, exécutez la commande suivante. Remplacez <servername> par le nom du serveur Exchange, puis remplacez <value> par un nombre entier tel que 30.

    Set-TransportServer <servername> -MaxConcurrentMailboxDeliveries <value>
    
  4. Quittez l'environnement de ligne de commande Exchange Management Shell.

Pour plus d'informations

Pour plus d'informations sur les paramètres de cmdlet Set-TransportServer, voir l'article Gestion de la limitation des messages.

Pour plus d'informations sur l'utilisation de la cmdlet Set-TransportServer, voir l'article Set- TransportServer.