Propriétés par défaut de mise en attente
Vous trouverez ci-après les noms des propriétés de mise en attente et leurs valeurs par défaut. Ces propriétés sont configurables dans le tableau de bord des paramètres BizTalk ou au format XML dans le fichier de configuration BizTalk (BTSNTSvc.exe.config ou BTSNTSvc64.exe.config). Les valeurs contenues dans le fichier de configuration de BizTalk sont appliquées en premier. Ensuite, les paramètres du tableau de bord des paramètres BizTalk sont appliqués. Les propriétés de mise en attente sont lues lorsque toutes les instances de l’hôte contenant une orchestration démarrent.
Important
Tous les paramètres d’orchestration ne sont pas exposés dans le tableau de bord des paramètres BizTalk. Pour ces paramètres, le fichier de configuration de BizTalk (BTSNTSvc.exe.config ou BTSNTSvc64.exe.config) est utilisé. Lors de l’utilisation du fichier de configuration de BizTalk, de nombreuses propriétés ne sont pas répertoriées. Ces propriétés et leurs valeurs par défaut sont toujours appliquées, même si elles ne sont pas explicitement spécifiées dans le fichier de configuration.
Pour modifier les valeurs par défaut, vous pouvez utiliser le tableau de bord des paramètres BizTalk ou les ajouter explicitement au fichier de configuration BizTalk. Pour plus d’informations, consultez Utilisation du tableau de bord paramètres pour BizTalk Server paramétrage des performances et BTSNTSvc.exe.config fichier.
Mise en attente
MaxThreshold = 1800
MinThreshold = 1
ConstantThreshold = -1
VirtualMemoryThrottlingCriteria
OptimalUsage = 900
MaximumUsage = 1300
IsActive = true
PrivateMemoryThrottlingCriteria
OptimalUsage = 50
MaximumUsage = 350
IsActive = true
PhysicalMemoryThrottlingCriteria
OptimalUsage = 90
MaximumUsage = 95
IsActive = false
Chacune de ces propriétés est décrite en détail par la suite.
Mise en attente
MaxThreshold et MinThreshold sont les limites supérieure et inférieure, en secondes, de la durée pendant laquelle une orchestration peut être bloquée à un abonnement (c’est-à-dire bloquée par une réception, une écoute ou un délai) avant d’être déshydratée. Il y aura également une valeur calculée au moment de l’exécution, appelée TestThreshold, et sa valeur, mesurée en secondes, se situe entre MinThreshold et MaxThreshold.
Si vous définissez une valeur en plus de la valeur par défaut -1 pour ConstantThreshold, il n’y aura pas de valeur d’exécution TestThreshold. Lorsqu’une orchestration est bloquée sur un abonnement et que l’historique de la durée pendant laquelle toutes les instances de cette orchestration ont été bloquées dans cet abonnement est supérieur à la valeur de TestThreshold, l’orchestration se déshydrate. Sinon, si l’historique est inférieur à la valeur TestThreshold , l’orchestration ne se déshydratera pas. En outre, même si l’historique indique que la déshydratation n’aura pas lieu, si l’heure de blocage actuelle atteint 2*TestThreshold, la déshydratation aura lieu. L'historique est défini par la moyenne des 10 derniers délais d'attente (en secondes) ou la moyenne des délais d'attente contenus dans l'historique si leur nombre est inférieur à 10.
Lorsque la valeur de TestThreshold tend vers MinThreshold à mesure que l’utilisation de la mémoire augmente, elle est appelée « limitation de la déshydratation basée sur la mémoire ». La limitation de la déshydratation basée sur la mémoire permet à davantage d’instances d’orchestration d’être actives, car lorsque l’une d’elles est bloquée en attente de travail (c’est-à-dire en attente d’un message ou d’un délai), elles peuvent être déshydratées et supprimées de la mémoire. TestThreshold est une fonction de diminution monotone de l’utilisation de la mémoire, elle est inversement proportionnelle à l’utilisation de la mémoire.
Voici les descriptions des propriétés individuelles de mise en attente :
MaxThreshold : limites supérieures, en secondes, de la durée pendant laquelle une orchestration peut être bloquée sur un abonnement avant d’être déshydratée.
MinThreshold : limites inférieures, en secondes, de la durée pendant laquelle une orchestration peut être bloquée sur un abonnement avant d’être déshydratée.
ConstantThreshold : seuil dynamique, qui oscille généralement entre les valeurs minimales et maximales spécifiées. Vous pouvez toutefois définir un seuil fixe en affectant une valeur à cette propriété. La valeur -1 indique au moteur de ne pas utiliser un seuil constant. N'affectez pas à cette propriété une valeur autre que -1 car cela désactiverait la limitation basée sur la mise en attente.
VirtualMemoryThrottlingCriteria
Actuellement, la mémoire virtuelle peut générer un goulot d'étranglement sur les machines 32 bits en raison de l'absence de gestion de la fragmentation des segments de mémoire, et vous devez donc définir également une limitation sur cette ressource. Modifiez la configuration si la valeur /3Go est définie ou si les hôtes sont exécutés sur une plateforme 64 bits. Les valeurs d'utilisation optimale et maximale sont exprimées en Mo.
Voici les descriptions des propriétés individuelles pour VirtualMemoryThrottlingCriteria :
OptimalUsage : quantité d’utilisation de la mémoire virtuelle à laquelle la limitation de la déshydratation commence à prendre effet. À ce stade, TestThreshold a la valeur MaxThreshold et toute utilisation de la mémoire supérieure à OptimalUsage fait que TestThreshold est inférieur à MaxThreshold.
MaximumUsage : quantité d’utilisation de la mémoire virtuelle à laquelle la limitation de la déshydratation est maximale. À ce stade, TestThreshold a la valeur MinThreshold et toute utilisation de la mémoire inférieure à MaximalUsage fait que TestThreshold est supérieur à MinThreshold.
IsActive : valeur booléenne indiquant si la limitation de la mémoire virtuelle est active.
PrivateMemoryThrottlingCriteria
Cette propriété est un critère de limitation utile mais les valeurs appropriées dépendent de l'exécution éventuelle d'autres services Windows sur l'ordinateur. Si l'ordinateur dispose de beaucoup de mémoire et n'est pas partagé avec autres services Windows, vous pouvez augmenter ces valeurs de manière significative.
Voici les descriptions des propriétés individuelles pour PrivateMemoryThrottlingCriteria :
OptimalUsage : quantité d’utilisation de la mémoire privée, en Mo, à laquelle la limitation de la déshydratation commence à prendre effet. À ce stade , TestThreshold a la valeur MaxThreshold et toute utilisation de la mémoire supérieure à OptimalUsage fait que TestThreshold est inférieur à MaxThreshold.
MaximalUsage : quantité d’utilisation de la mémoire privée, en Mo, à laquelle la limitation de la déshydratation est au maximum. À ce stade , TestThreshold a la valeur MinThreshold et toute utilisation de la mémoire inférieure à MaximalUsage fait que TestThreshold est supérieur à MinThreshold.
IsActive : valeur booléenne indiquant si la limitation de la mémoire privée est active.
PhysicalMemoryThrottlingCriteria
Il existe également une limitation de la mémoire physique où les valeurs sont exprimées en pourcentage de la mémoire utilisée et non en Mo. Cette propriété est désactivée par défaut mais vous pouvez la définir si besoin est.
Voici les descriptions des propriétés individuelles pour PhysicalMemoryThrottlingCriteria :
OptimalUsage : pourcentage optimal de mémoire physique à utiliser pour les instances hôtes.
MaximalUsage : pourcentage maximal de mémoire physique à utiliser pour les instances hôtes.
IsActive : valeur booléenne indiquant si la limitation de mémoire physique est active.
Comportement des propriétés de mise en attente
BizTalk Server utilise les propriétés de mise en attente pour décider du moment où il convient de mettre en attente ou de réalimenter les orchestrations. Dans des conditions de charge normales, les valeurs de mise en attente par défaut sont suffisantes, mais si le système fonctionne avec de lourdes charges et que vous souhaitiez modifier les caractéristiques de performances, vous devrez procéder à un réglage manuel.
Le comportement de mise en attente de BizTalk Server dépend entièrement de la quantité de mémoire disponible et de la quantité de mémoire utilisée. Il varie en fonction des quantités de mémoire et est différent sur les hôtes 32 bits et les hôtes 64 bits.
Les propriétés de mise en attente font la distinction entre octets privés et octets virtuels pour l'hôte de l'orchestration :
Octets virtuels. Il s’agit de la taille actuelle, en octets, de l’espace d’adressage virtuel utilisé par le processus. L'utilisation de l'espace d'adressage virtuel n'implique pas nécessairement l'utilisation correspondante du disque ou des pages de mémoire principales. L'espace virtuel reste limité, et le processus peut restreindre sa capacité à charger des bibliothèques.
Octets privés. Taille actuelle, en octets, de la mémoire allouée par le processus et qui ne peut pas être partagé avec d'autres processus.