Sun Java System Message Queue 3.7 UR1 技术概述

群集同步

每次更改群集的配置时,有关更改的信息都会自动传播到群集内的所有代理。发生以下某个事件时,会更改群集配置:

有关这些更改的信息会立即传播到群集内发生更改时处于联机状态的所有代理。但是,发生更改时,处于脱机状态的代理(例如,已崩溃的代理)不会收到更改通知。为了给脱机代理提供该信息,Message Queue 维护群集的配置更改记录,其中记录了已创建或已销毁的所有持久性实体(目的地和长期订阅)。当脱机代理恢复为联机状态时(或向群集添加新代理时),会查阅此记录以获取有关目的地和长期订户的信息,然后与其他代理交换有关当前活动的消息使用方的信息。

群集内的某个代理被指定为主代理,该主代理负责维护配置更改记录。因为在没有主代理的情况下其他代理无法完成初始化,所以应该始终首先启动群集内的主代理。如果主代理处于脱机状态,则将无法在整个群集内传播配置信息,因为其他代理无法访问配置更改记录。在这些情况下,如果尝试创建、重新配置或销毁目的地或长期订阅,或者尝试执行某个相关的操作(例如,重新激活长期订阅),将发生异常。(但是,非管理消息传送仍然可以正常进行。)主代理和配置更改记录的使用是可选的。只有当群集配置发生更改或代理发生故障之后群集的同步非常重要时,才有必要使用它们。