20.12. Haute disponibilité

20.12.1. Introduction à la haute disponibilité

HornetQ supporte la possibilité de continuer à fonctionner après un basculement d'un ou de plusieurs serveurs. Ceci est en partie réalisé grâce au support de basculement lorsque des connexions de clients migrent d'un serveur live vers un serveur de sauvegarde en cas d'un basculement de serveur live. Pour conserver le serveur de sauvegarde actuel, les messages sont répliqués du serveur live vers le serveur de sauvegarde en continu par deux stratégies: store partagé et réplication.
Il existe deux types de topologies en haute disponibilité :
  • Topologie dédié : cette topologie est composée de deux serveurs EAP. Dans le premier serveur, HornetQ est configuré comme un serveur live. Dans le second serveur, HornetQ est configuré comme un serveur de sauvegarde. Le serveur EAP ayant HornetQ configuré comme un serveur de sauvegarde agit seulement en tant que conteneur pour HornetQ. Ce serveur est inactif et ne peut pas héberger des déploiements comme les EJB, les MDB ou des servlets.
  • Topologie colocalisé : cette topologie contient deux serveurs d'EAP. Chaque serveur EAP contient deux serveurs de HornetQ (un serveur live et un serveur de sauvegarde). Le serveur HornetQ sur le premier serveur EAP et le serveur de sauvegarde de HornetQ sur le second serveur EAP forment une paire de serveurs live de sauvegarde, tandis que le serveur live HornetQ sur le second serveur EAP et le serveur de sauvegarde HornetQ sur le premier serveur EAP forment une autre paire de serveurs de sauvegarde live.
En topologie colocalisée, dès qu'un serveur HornetQ (faisant partie de la paire live-sauvegarde) échoue, le serveur de sauvegarde HornetQ prend la relève et redevient actif. Lorsque le serveur de sauvegarde HornetQ s'arrête en cas de restauration automatique (failback), alors les usines de connexions et destinations configurées sur le serveur de sauvegarde sont dissociées de JNDI (Java Naming and Directory Interface).
L'interface JNDI (Java Naming and Directory Interface) est partagée avec l'autre serveur live HornetQ (faisant partie de l'autre paire live-sauvegarde). Ainsi, la dissociation des usines de connexion et destinations de JNDI a pour effet de dissocier également les fabriques de connexions et de destinations de ce serveur live HornetQ.

Important

La configuration des serveurs de sauvegarde colocalisés ne peuvent pas contenir de configurations de destination ou d'usines de connexion.

Note

Les informations suivantes référencient standalone-full-ha.xml. Les changements de configuration peuvent s'appliquer à standalone-full-ha.xml ou à tout fichier de configuration dérivé.