Définition de la spécification de tâche maximale (MXT)

Le paramètre d'initialisation du système MXT limite le nombre total de tâches utilisateur simultanées dans le système CICS®. Le paramètre MXT contrôle la demande de ressources sans contrainte, en particulier l'utilisation du stockage virtuel afin d'éviter les situations de pénurie de stockage (SOS). Ce paramètre affecte également la quantité de mémoire allouée au segment de pile du noyau et contrôle la concurrence pour les ressources, la longueur des files d'attente (ce qui permet d'éviter une utilisation excessive du processeur) et l'utilisation réelle de la mémoire.

La valeur de MXT affecte l'utilisation de l'espace de stockage dans l'espace d'adressage CICS. Vous devez veiller à ce que suffisamment d'espace de stockage soit disponible pour les autres utilisateurs dans les zones de stockage dynamique (DSA).

Le paramètre MXT contrôle le nombre de tâches utilisateur éligibles à la répartition. MXT peut être définie au démarrage ou à l'aide de la commande SET SYSTEM. Lorsque MXT est défini, le noyau et le répartiteur tentent de préallouer suffisamment de blocs de contrôle pour garantir que le nombre de tâches utilisateur spécifié par la valeur MXT puisse être créé simultanément. La majeure partie de l'espace de stockage pour cette pré-allocation est obtenue à partir du CDSA ou de l'ECDSA, bien qu'une petite quantité d'espace de stockage MVS soit nécessaire pour chaque tâche (environ 256 octets dans un espace de stockage de 31 bits, au-dessus de la ligne de 16 Mo, et 32 octets dans un espace de stockage de 24 bits, au-dessous de la ligne de 16 Mo, pour chaque tâche d'utilisateur). La valeur MXT est liée à la taille de la région z/OS® et aux limites de taille de l'ASD que vous avez définies (paramètres DSALIM et EDSALIM ). Voir Définition des limites de stockage CICS.

Le paramètre d'initialisation du système MXT a une valeur par défaut de 250, une valeur minimale de 10 et une valeur maximale de 2000. Initialement, définissez MXT comme le nombre total de tâches utilisateur simultanées dont vous avez besoin dans votre système.

Si la valeur de MXT est trop élevée, le débit et le temps de réponse peuvent en souffrir lorsque les ressources du système (processeur, stockage réel et stockage virtuel) sont limitées ou qu'il y a conflit de ressources, par exemple pour les chaînes de fichiers ou les tampons, les threads Db2®, les ENQ, etc. En outre, si vous définissez la valeur MXT trop élevée au démarrage, la CICS impose un nombre maximal de tâches plus faible, compatible avec le stockage virtuel disponible.

Inversement, si la valeur de MXT est trop basse, le débit et le temps de réponse peuvent également être affectés par des délais d'attente excessifs, même si les ressources du système (processeur, stockage réel et stockage virtuel) ne sont pas limitées.

Surveillez les performances de la région CICS pour vous assurer que le temps de réponse et les autres composantes temporelles (telles que le temps d'envoi et le temps de suspension) de vos transactions sont acceptables. Dans certains systèmes, le fait de fixer MXT à un niveau trop élevé risque d'accroître la sollicitation des ressources au point d'entraîner des retards supplémentaires pour les transactions. Vous pouvez utiliser les statistiques globales du gestionnaire de transactions des programmes utilitaires DFH0STAT et DFHSTUP pour surveiller la valeur de MXT.

Si l'optimisation des performances des connexions HTTP est activée, lorsque la région est à pleine capacité, au lieu de mettre en file d'attente les demandes HTTP sur MXT dans CICS (ce qui implique des exigences de traitement et de stockage internes), les demandes sont mises en file d'attente en dehors de CICS dans l'arriéré TCP/IP. MXT n'est plus dépassé par un afflux de requêtes HTTP (externalisé comme le champ XMGPQT dans les statistiques globales du gestionnaire de transactions), mais le nombre de fois où MXT est atteint (externalisé comme le champ XMGTAMXT dans les statistiques globales du gestionnaire de transactions) peut augmenter. Cela peut se produire si la région reste sous tension lorsque CICS traite chaque demande de la file d'attente de l'arriéré ; lorsque la tâche de traitement de la demande est terminée, CICS revient à MXT. Une fois que les niveaux de MXT auront baissé, CICS acceptera la demande suivante, et sa transaction peut amener CICS à revenir à MXT. Cela n'indique pas que MXT doit être augmenté, mais que sa valeur actuelle protège correctement CICS d'une demande de ressources non limitée.

En outre, les champs de données de performance suivants du groupe DFHTASK sont utiles pour évaluer la relation entre la charge de travail pendant la durée de vie d'une transaction et la performance de la transaction :
  • CURTASKS enregistre le nombre actuel de transactions utilisateur actives dans le système au moment où la tâche utilisateur a été attachée.
  • MAXTASKS enregistre le paramètre actuel du nombre maximum de tâches pour la région CICS au moment où la tâche utilisateur a été attachée.
  • MXTDELAY enregistre le temps écoulé dans l'attente de la première expédition lorsque le délai est dû au fait que la valeur MXT est atteinte.

Pour modifier la valeur de MXT alors que CICS est en cours d'exécution, vous pouvez utiliser la commande SET SYSTEM MAXTASKS. Si la valeur de MXT est trop élevée alors que CICS est en cours d'exécution, le message d'erreur : CEILING REACHED est affiché. Les statistiques du gestionnaire de transactions CICS indiquent le nombre de fois où le plafond MXT a été atteint.

Remarque : si les paramètres d'initialisation du système MAXOPENTCBS ou MAXXPTCBS n'ont pas été spécifiés, le paramètre MXT définit également les paramètres MAXOPENTCBS et MAXXPTCBS.
Important : avant de modifier la valeur de MXT, vérifiez les informations contenues dans les pools Open TCB.