集群通道对象

目录

简介

集群通道是我们昵称为 Apache Tribes 的一个小型框架的主要组件。
通道管理一组子组件,它们共同创建一个组通信框架。
然后,需要在不同 Tomcat 实例之间发送消息的组件在内部使用此框架。
这些组件的一些示例包括用于 DeltaManager 进行消息传递的 SimpleTcpCluster,或使用不同复制策略的 BackupManager。复制的 Context 对象还使用通道对象来传达上下文属性更改。

嵌套组件

通道/成员资格:
成员资格组件负责在集群中自动发现新节点,并为任何未响应心跳的节点提供通知。默认实现使用多播。
在成员资格组件中,您可以配置如何发现和/或划分您的节点(又称成员)。您始终可以找到有关 Apache Tribes 的更多信息

通道/发送器:
发送器组件管理所有出站连接和通过网络从一个节点发送到另一个节点的数据消息。此组件允许并行发送消息。默认实现使用 TCP 客户端套接字,并且此处配置了用于传出消息的套接字调整。
您始终可以找到有关 Apache Tribes 的更多信息

通道/发送器/传输:
传输组件是发送器组件的底层 IO 层。默认实现使用非阻塞 TCP 客户端套接字。
您始终可以找到有关 Apache Tribes 的更多信息

通道/接收器:
接收器组件侦听来自其他节点的消息。您将在此处配置群集线程池,因为它会将传入的消息分派到线程池以加快处理速度。默认实现使用非阻塞 TCP 服务器套接字。
您始终可以找到有关 Apache Tribes 的更多信息

通道/拦截器:
该通道将通过拦截器堆栈发送消息。因此,您可以自定义发送和接收消息的方式,甚至可以自定义处理成员资格的方式。
您始终可以找到有关 Apache Tribes 的更多信息

属性

通用属性

属性 说明
className 此处的默认值是 org.apache.catalina.tribes.group.GroupChannel,目前是唯一可用的实现。

org.apache.catalina.tribes.group.GroupChannel 属性

属性 说明
heartbeat 指示通道是否管理自己的心跳的标志。如果设置为 true,则通道会为心跳启动一个本地线程。如果将此标志设置为 false,则必须将 SimpleTcpCluster#heartbeatBackgroundEnabled 设置为 true。默认值为 true。
heartbeatSleeptime 如果 heartbeat == true,则以毫秒为单位指定心跳线程的间隔。默认值为 5000(5 秒)。
optionCheck 如果设置为 true,则 GroupChannel 将检查每个拦截器使用的选项标志。如果两个拦截器共享相同的标志,则报告错误。默认值为 false。
jmxEnabled 指示通道组件是否向 JMX 注册的标志。默认值为 true。
jmxDomain 如果 jmxEnabled 设置为 true,则指定应向其注册此通道的 jmx 域。ClusterChannel 用作默认值。
jmxPrefix 如果 jmxEnabled 设置为 true,则指定将与通道 ObjectName 一起使用的 jmx 前缀。