高可用性管理器
本产品包含一个高可用性管理器组件。高可用性管理器提供的服务仅可用于产品组件。
- 一个使单一服务自己具有高可用性的框架。使用此框架的单一服务的示例包括集群成员的事务管理器和缺省消息传递提供程序(也称为服务集成总线)。
- 一种使得服务器很容易交换状态数据的机制。此机制通称为“公告牌”。
- 一个便于进程之间高速而可靠地传递消息的专用框架。将本产品配置为进行内存到内存复制时,数据复制服务将使用此框架。
高可用性管理器实例将在一个单元中的每个应用程序服务器、代理服务器、Node Agent 和 Deployment Manager 上运行。可以将一个单元划分成多个高可用性域(称为“核心组”)。每个高可用性管理器实例都通过使用专门的并且可配置的专用传输通道来与同一核心组中的所有其他高可用性管理器实例建立网络连接。传输通道提供了一些机制,使高可用性管理器实例可以检测核心组中的其他成员何时启动、停止或失败。
在核心组中,选择高可用性管理器实例来协调高可用性活动。所选择的实例被称为核心组协调程序。协调程序具有高可用性,因此,当正在充当协调程序的进程停止或失败时,就会选择另一个实例来充当协调程序角色,而不会损失连续性。
高可用性组件
高可用性组件就是对可以运行该组件的进程定义了高可用性组的组件。协调程序将跟踪高可用性组成员资格,并且知道每个高可用性组件可以在哪些进程上运行。
协调程序还会使高可用性策略与每个高可用性组相关联。高可用性策略是一组伪指令,用于帮助协调程序管理高可用性组件。例如,如果某特定进程可用时,一条伪指令可能指定一个组件在该进程上运行。伪指令是可以配置的,因此,可以针对您的安装来定制策略。
当核心组进程启动、停止或失败时,就会通知协调程序,并且协调程序随时都知道哪些进程是可用的。协调程序使用此信息以及高可用性组和策略信息来确保组件一直起作用。协调程序使用策略伪指令来确定它在哪个进程上启动和运行每个组件。如果所选择的进程失败,协调程序就会在另一个合适的进程上重新启动该组件。这样做就缩短了恢复时间,并且将自动进行故障转移,也不需要启动替代进程。
状态数据交换
高可用性管理器提供了一种专门的消息传递机制,使进程之间可以交换有关它们的当前状态的信息。每个进程都会发送或者记录与它的当前状态相关的信息,还可以注册为当其他进程的状态发生变化时就通知它。工作负载管理 (WLM) 组件使用此机制来构建和维护路由表信息。使用这种机制构建和维护的路由表具有高可用性。
复制
随本产品一起提供的数据复制服务 (DRS) 用来在集群成员之间复制 HTTP 会话数据、有状态 EJB 会话和动态高速缓存信息。当配置了 DRS 以进行内存到内存复制时,就会使用为高可用性管理器定义的传输通道来实现在集群成员之间传递此数据。