Jgroup使用“默认情况下IP多播向所有成员发送消息(UDP)以及发现初始成员。但是,如果不能使用多播,则UDP可以配置为发送多个单播消息而不是一个多播消息。要将UDP配置为使用多个单播消息来发送组消息而不是使用IP多播,必须将ip_mcast属性设置为false。 (根据jboss文档https://developer.jboss.org/)
我的问题是如何在wildfly中将“ip_mcast”值传递给false?下面是standalone-ha.xml中的示例jgroups子系统。在xsd中,我没有看到传递此值的方法。请帮忙!!
<subsystem xmlns="urn:jboss:domain:jgroups:4.0">
<channels default="ee">
<channel name="ee" stack="udpgossip"/>
</channels>
<stacks>
<stack name="udpgossip">
<transport type="UDP" socket-binding="jgroups-tcp"/>
<protocol type="TCPGOSSIP">
<property name="initial_hosts">172.17.0.2[12001]</property>
</protocol>
<protocol type="MERGE3"/>
<protocol type="FD_SOCK" socket-binding="jgroups-tcp-fd"/>
<protocol type="FD"/>
<protocol type="VERIFY_SUSPECT"/>
<protocol type="pbcast.NAKACK2"/>
<protocol type="UNICAST3"/>
<protocol type="pbcast.STABLE"/>
<protocol type="pbcast.GMS"/>
<protocol type="MFC"/>
<protocol type="FRAG2"/>
</stack>
</stacks>
</subsystem>
答案 0 :(得分:0)
在架构中,<transport/>
扩展<protocol/>
,协议可以拥有属性,正如配置示例已经显示的那样。所以设置它的正确方法应该是
<transport type="UDP" socket-binding="jgroups-tcp">
<property name="ip_mcast">false</property>
</transport>