Sun Java System Application Server Enterprise Edition 8.1 2005Q2 高可用性管理指南

连接池和故障转移

Application Server 支持 JMS 连接池和故障转移。Sun Java System Application Server 将自动实现 JMS 连接池。“地址列表行为”属性为 random(默认值)时,Application Server 将从 JMS 主机列表中随机选择其主代理。发生故障转移时,MQ 会将负载透明地转移到另一个代理,并维持 JMS 语义。

要指定连接丢失时 Application Server 是否尝试重新连接到主代理,请选择“重新连接”复选框。如果已启用,则当主代理出现故障时,Application Server 将尝试重新连接到 JMS 主机列表中的另一个代理。

启用“重新连接”时,也同时指定以下属性:

您可以使用 JMS 连接工厂设置覆盖这些设置。有关详细信息,请参见《Sun Java System Application Server Enterprise Edition 8.1 2005Q2 管理指南》中的“有关 JMS 连接工厂的管理控制台任务”

负载平衡的消息流入

Application Server 将消息随机传送到具有相同 ClientID 的 MDB。持久订阅者需要 ClientID

对于没有配置 ClientID 的非持久订阅者,特定 MDB 中订阅同一主题的所有实例均认为是等效的。当 MDB 部署到 Application Server 的多个实例时,只有一个 MDB 接收消息。如果多个不同的 MDB 订阅了同一主题,则每个 MDB 的一个实例将接收消息的副本。

要使用同一队列支持多个使用者,请将物理目标的 maxNumActiveConsumers 属性设置为较大值。如果已设置此属性,MQ 将最多允许这些数量的 MDB 使用同一队列中的消息。消息将被随机传送至 MDB。如果将 maxNumActiveConsumers 设置为 -1,将不限制使用者的数目。