Configuration du comportement du moteur de messagerie et du serveur en cas de perte d'une connexion de magasin de données
Si la connexion entre un moteur de messagerie en cours d'exécution et son magasin de données est perdue, en raison d'une défaillance ou parce que vous arrêtez la base de données pour une opération de maintenance, vous pouvez vérifier le bon fonctionnement du moteur de messagerie une fois la connexion rétablie en configurant le serveur pour qu'il redémarre automatiquement.
Pourquoi et quand exécuter cette tâche
Le comportement décrit dans cette rubrique ne s'applique que si le moteur de messagerie est en cours d'exécution et qu'il a défini des verrous exclusifs sur son magasin de données.
En définissant la propriété personnalisée sib.msgstore.jdbcFailoverOnDBConnectionLoss sur un moteur de messagerie, vous pouvez déterminer le comportement du moteur de messagerie et de son serveur d'hébergement si la connexion avec le magasin de données est perdue.Valeur de la propriété | Comportement en cas de perte de la connexion au magasin de données |
---|---|
true (valeur par défaut) |
Le
gestionnaire de haute disponibilité arrête le moteur de messagerie et le serveur d'applications
hôte lors de la prochaine vérification Is alive du service
de groupe central (la valeur par défaut est 120 secondes). Si un agent de noeud surveille le serveur et que vous ayez activé le redémarrage automatique
dans les règles de supervision de ce serveur, le serveur redémarre. Le moteur de messagerie
démarre lorsqu'un serveur approprié est disponible.
Remarque : Les messages
dont le niveau de fiabilité est inférieur à Persistant - Assuré peuvent être acceptés par le
moteur de messagerie pendant l'intervalle entre deux vérifications Is
alive. Ils peuvent également être perdus.
|
false | Le moteur de messagerie poursuit son exécution, accepte de travailler et tente régulièrement de rétablir la connexion avec le magasin de données. Si des opérations continuent d'être soumises au moteur de messagerie alors que le magasin de données n'est pas disponible, les résultats peuvent être inattendus et le moteur de messagerie peut prendre un état incohérent lorsque la connexion au magasin de données est restaurée. Remarque : Si
des travaux sont soumis au moteur de messagerie, la messagerie non persistante
peut échouer car le moteur de messagerie risque d'avoir besoin d'utiliser le magasin
de données, par exemple pour allouer un ID unique à un message
ou pour retirer les messages non persistants de la mémoire.
|
![]() |
![]() Le moteur de messagerie poursuit son exécution, accepte de travailler et tente régulièrement de rétablir la connexion avec le magasin de données. Remarque : Sur un
système z/OS où l'environnement à haute disponibilité est en place (avec des serveurs
WebSphere Application Server en cluster et des groupes de partage de données DB2), le
paramètre false est préféré et recommandé. Le paramètre false ne convient pas si un cluster
ne comporte qu'un seul membre et aucun serveur pour la reprise en ligne du moteur de
messagerie.
|
Procédure
- Cliquez sur pour accéder au panneau de propriétés personnalisées du moteur de messagerie.
- Cliquez sur Nouveau.
- Entrez sib.msgstore.jdbcFailoverOnDBConnectionLoss dans la zone Nom et true dans la zone Valeur.
- Cliquez sur OK.
- Sauvegardez les modifications de la configuration principale.
- Redémarrez le serveur d'applications.
- Si vous disposez d'un cluster, répétez les étapes précédentes pour ajouter cette propriété à chaque moteur de messagerie du cluster.
Résultats
Si vous souhaitez que le serveur redémarre, vérifiez que l'option Redémarrage automatique est sélectionnée dans la règle de supervision du serveur.
Que faire ensuite
Si un serveur redémarre automatiquement dans cette situation, des messages CWSID0039E s'affichent dans les journaux de la JVM du serveur.
Après le redémarrage du serveur, cliquez sur pour afficher le statut du moteur de messagerie. Vérifiez que le moteur de messagerie est redémarré et en cours d'exécution.
Si le serveur fait partie d'un cluster, vérifiez que les membres du cluster sont toujours activés pour la haute disponibilité selon les instructions de la rubrique Gestion de la haute disponibilité en cas d'échec du démarrage des moteurs de messagerie.
Vous pouvez souhaiter ajuster votre système afin que la perte de connexion de la base de données soit détectée rapidement et que le moteur de messagerie attende le temps nécessaire pour que le magasin de données soit de nouveau disponible avant de démarrer un autre serveur.