为了使Apache Ignite形成一个多节点集群,节点需要相互了解。这可以使用ip多播来实现。在Ignite中执行此操作的类是 TcpDiscoveryMulticastIpFinder ,它具有属性“ mulitcastGroup”,实际上是一个tcp / ip多播地址,群集上的节点将使用该地址来发现彼此。如果使用 TcpDiscoveryMulticastIpFinder 而不指定多播组,它将使用默认的228.1.2.4,如以下代码片段所示:
public class TcpDiscoveryMulticastIpFinder extends TcpDiscoveryVmIpFinder {
/** Default multicast IP address (value is {@code 228.1.2.4}). */
public static final String DFLT_MCAST_GROUP = "228.1.2.4";
//code ommitted ...
}
但是,用于多播的IPv4 specification表示应该将239.0.0.0-239.255.255.255范围内的多播地址用于本地管理的特定目的。该规范未明确定义如何处理以228开头的多播地址。 是否有任何特殊原因使Apache Ignite使用228.1.2.4,或者这是偶然的选择,而不是卑鄙的选择。我应该使用默认组还是应该在239.0.0.0-239.255.255.255范围内选择一个?
答案 0 :(得分:1)
我认为没有任何特殊原因。我在开发人员/用户列表和git存储库中找不到与此相关的内容。 我认为您可以使用任何合适的多播地址。