Libération et reconnexion de connexions socket persistantes

Une connexion TCP/IP entre IMS TM Resource Adapter et IMS Connect est persistante et reste ouverte à la fois pour une connexion socket persistante partageable et pour une connexion socket persistante dédiée, sauf si une erreur se produit.

Le socket peut se fermer lorsqu'IMS TM Resource Adapter ou IMS Connect rencontre une erreur, ou lorsque WebSphere Application Server le déconnecte pour la gestion du pool de connexions.

Dans le cas d'une connexion socket persistante dédiée, la connexion socket peut être utilisée seulement par les interactions dont l'ID client est celui qui a été utilisé pour établir la connexion. Le nombre de connexions socket augmente à mesure que de nouveaux ID client sont utilisés pour les interactions sur les connexions socket persistantes dédiées.

Si la propriété correspondant au nombre maximum de connexions ainsi que la propriété correspondant au délai d'attente de connexion sont définies à une valeur non nulle dans la console d'administration de WebSphere Application Server, lorsque la valeur du nombre maximum de connexions est atteinte et que toutes les connexions sont utilisées, l'application reçoit une exception ConnectionWaitTimeoutException, une fois le délai d'attente de connexion écoulé. Ce comportement est normal pour WebSphere Application Server. L'exception ConnectionWaitTimeoutException s'applique aux connexions socket partageables et aux connexions socket dédiées.

Cependant, si la valeur de la propriété du nombre maximum de connexions est atteinte et si l'une des connexions persistantes n'est pas en cours d'utilisation, WebSphere Application Server la déconnecte afin de pouvoir répondre à la demande de création d'une nouvelle connexion socket persistante. Ce comportement standard de WebSphere Application Server s'applique aussi bien aux connexions partageables qu'aux connexions dédiées.

Conseil : WebSphere Application Server comporte plusieurs paramètres de pool de connexions qui contribuent à gérer le pool et redistribuer les sessions de persistance. Utilisez le paramètre de délai d'expiration inutilisé pour spécifier l'intervalle, en secondes, au-delà duquel une connexion physique est éliminée.
Important : Si vous n'utilisez pas de serveur d'applications pour la gestion de la connexion (environnement non géré), pour les transactions en mode de validation 0 (CM0, ou validation-envoi), vous devez gérer vous-même le pool de connexions. Comme les transactions CM0 sont récupérables, IMS Connect crée un TPIPE séparé pour chaque client utilisant le mode CM0. Sans un serveur d'applications pour gérer le pool de connexions, de nombreux TPIPEs seraient créés qui finiraient par surcharger le système.

Reconnexion de socket

IMS TM Resource Adapter comporte une fonction de reconnexion de socket qui tente de rétablir une connexion périmée dans un pool de connexions lorsque l'une des connexions rencontre un problème de communication lors de l'envoi d'une demande à IMS Connect ou de la réception d'une réponse de celui-ci.

Lorsqu'une demande arrive, si IMS TM Resource Adapter détecte une connexion périmée, l'adaptateur émet une exception. Lorsque la demande suivante est reçue et tente d'utiliser la connexion périmée, IMS TM Resource Adapter vérifie qu'IMS Connect est opérationnel. Si c'est le cas, IMS TM Resource Adapter se reconnecte avant d'envoyer la demande d'interaction. Lorsque la connexion est restaurée, un message d'information ICO0140I est consigné.

Cette fonction de reconnexion augmente la tolérance aux pannes de IMS TM Resource Adapter lorsqu'un problème de connexion de réseau temporaire se produit. Surtout, cette fonction vous permet de recycler IMS Connect dans le cadre de la maintenance du système, sans devoir resoumettre d'interactions d'IMS TM Resource Adapter à partir de l'application client.

Lorsqu'un distributeur sysplex est utilisé entre IMS TM Resource Adapter et WebSphere Application Server, un pool de connexion WebSphere Application Server peut comporter des connexions à plusieurs IMS Connect. Si l'une des instances IMS Connect est recyclée, les nouvelles demandes sont dirigées vers d'autres instances IMS Connect. Les nouvelles demandes sont dirigées vers l'instance recyclée d'IMS Connect uniquement lorsque cette instance d'IMS Connect est rétablie et si d'autres instances IMS Connect ne peuvent plus gérer la charge de travail.

Pour faciliter la redistribution de la charge de travail entre les instances IMS Connect, vous pouvez utiliser la propriété de délai d'expiration inutilisé dans les paramètres de pool de connexions dans WebSphere Application Server. Comme les connexions arrivées à expiration sont abandonnées, une nouvelle connexion aide à redistribuer la connexion aux instances d'IMS Connect recyclées.

Pour une demande d'appel, IMS TM Resource Adapter tenterait de se reconnecter suivant les valeurs des propriétés IMSActivationSpec retryLimit et retryInterval. La propriété retryLimit spécifie le nombre maximum de fois qu'IMS TM Resource Adapter tenterait de se reconnecter à IMS Connect en cas de perte d'une connexion, ou à IMS en cas de perte de la connexion au magasin de données IMS. La propriété retryInterval spécifie le délai avant le contrôle suivant de l'état d'IMS Connect.


Vos commentaires