gpt4 book ai didi

java - 同一主机上的 JGroups 成员集群仅使用一个地址

转载 作者:行者123 更新时间:2023-12-01 11:12:39 26 4
gpt4 key购买 nike

我想使用 JGroups 开发一些分布式应用程序。但不幸的是,我无法在集群上获得超过一个成员。他们总是加入同一个地址:

    this.channel = new JChannel("udp.xml");
channel.connect("test-cluster");
this.rpcDispatcher = new RpcDispatcher(channel, null, null, this);
this.myAddress = channel.getAddress();

System.out.println("joined cluster: " + channel.getView().size() + ", " + channel.getView());

当我启动两个(或更多)调试 session 时,我总是会得到一个大小为 1 的集群。

joined cluster: 1, [Jimbo-3806|0] [Jimbo-3806]

因此,您无法从一个 jvm 向另一个 jvm 发送直接消息(因为您需要传递相同的地址)。

我使用与 JGroups 捆绑在一起的默认 udp.xml。

最佳答案

如果其他人也遇到这个问题。确保draw demo工作正常并且您的 JVM 正在使用 IPv4(这一点很重要)。在我的例子中,JVM 坚持使用 IPv6,我必须强制 JVM 使用 IPv4,如下所示:

System.setProperty("java.net.preferIPv4Stack", "true");
Channel channel = new JChannel("udp.xml");
channel.connect("test-cluster");

关于java - 同一主机上的 JGroups 成员集群仅使用一个地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32168914/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com