20.11.2. 广播组

客户使用连接器来定义连接至服务器的方式和途径。服务器使用广播组(broadcast group)来在网络里广播连接器。广播组使用一系列连接器对并在网络上进行广播。每个连接器对都包含用于在线和备份服务器的连接设置。
您可以在服务器配置文件(standalone.xmldomain.xml)里的 broadcast-groups 定义广播组。单个 HornetQ 服务器可以有多个广播组。您也可以定义用户数据报文协议(User Datagram Protocol,UDP)或 JGroup 广播组。

20.11.2.1. UDP 广播组

下面的例子定义了一个 UDP 广播组:
<broadcast-groups>
   <broadcast-group name="my-broadcast-group">
      <local-bind-address>172.16.9.3</local-bind-address>
      <local-bind-port>5432</local-bind-port>
      <group-address>231.7.7.7</group-address>
      <group-port>9876</group-port>
      <broadcast-period>2000</broadcast-period>
      <connector-ref>netty</connector-ref>
  </broadcast-group>
</broadcast-groups>

注意

在上面的配置示例里,属性"local-bind-address"、"local-bind-port"、"group-address" 和 "group-port" 都已舍弃不用。您可以选择使用 "socket-binding" 属性。
下面的例子定义了一个 UDP 广播组,它用属性 "socket-binding" 替换了所有已舍弃不用的属性。
<broadcast-groups>
   <broadcast-group name="my-broadcast-group">
      <socket-binding>messaging-group</socket-binding>
      <broadcast-period>2000</broadcast-period>
      <connector-ref>netty</connector-ref>
   </broadcast-group>
</broadcast-groups>

下表描述了上例里使用的常用来定义 UDP 广播组的重要参数:

表 20.11. UDP 广播组参数

属性 描述
name attribute
指定服务器里每个广播组的名称。每个广播组都必须有一个唯一名称。
local-bind-address
[已舍弃] 这是 UDP 的专有属性,它用来指定数据报文套接字绑定的本地地址。您必须设置这个属性以定义用于广播的接口。如果没有指定这个属性,那么套接字会绑定到配符地址(内核随机生成的地址)。
local-bind-port
[已舍弃] 这是 UDP 的专有属性,它用来指定数据报文套接字绑定的本地端口。默认值 "-1" 表示使用匿名的端口。
group-address
[已舍弃] 这是广播消息时 UDP 专有的多点传送地址。这个 IP 地址的范围是 224.0.0.0 到 239.255.255.255(包含)。224.0.0 是保留地址且不能使用。
group-port
[已舍弃] 它指定了用于广播的 UDP 端口号
socket-binding
它指定了广播组的套接字绑定
broadcast-period
这个参数指定两次广播的时间间隔(毫秒)。它是可选参数。
connector-ref
它引用将被广播的连接器。