JGroups:发现 num_discovery_runs 不工作
JGroups: Discovery num_discovery_runs is not working
我有自己的 Protocol[]
看起来像这样
Protocol[] prot_stack = {
new UDP(),
new PING()
.setValue("num_discovery_runs", 10)
.setValue("stagger_timeout", 1500)
.setValue("async_discovery", true)
.setValue("async_discovery_use_separate_thread_per_request", true)
.setValue("discovery_rsp_expiry_time", 5000),
new MERGE3(),
new FD_SOCK(),
new FD_ALL(),
new VERIFY_SUSPECT(),
new BARRIER(),
new NAKACK2(),
new UNICAST3(),
new STABLE(),
new GMS(),
new UFC(),
new MFC(),
new FRAG2()};
但出于某种原因,如果将 num_discovery_runs
设置为 10,发现将不再起作用并且不再响应。当 num_discovery_run
设置为 3 时,它 运行 是发现,但只有一次。
它没有运行它三遍。它只是在 3000 毫秒后发现没有可用的协调器并创建了自己的协调器(我想通过更多发现 运行s 来防止这种情况)。
当前代码如下所示
channel = new JChannel(prot_stack).setReceiver(this).addChannelListener(this);
channel.setDiscardOwnMessages(true);
channel.setName("RFID Cluster");
channel.connect("RFID Cluster");
我做错了什么?为什么我不能将发现数量 运行s 更改为高于 3(这甚至不起作用)。
根据 documentation 这应该可行。
您发现了一个错误!
我创建了 [1],修复了它并将更改提交给 master
。您可以通过从源代码创建 JAR 来尝试修复(ant jar
或 mvn package
即可),或者等待 4.1.5 发布。这将需要几周时间。
解决方法:不要将 num_discovery_runs
设置为大于 1
的值。
我有自己的 Protocol[]
看起来像这样
Protocol[] prot_stack = {
new UDP(),
new PING()
.setValue("num_discovery_runs", 10)
.setValue("stagger_timeout", 1500)
.setValue("async_discovery", true)
.setValue("async_discovery_use_separate_thread_per_request", true)
.setValue("discovery_rsp_expiry_time", 5000),
new MERGE3(),
new FD_SOCK(),
new FD_ALL(),
new VERIFY_SUSPECT(),
new BARRIER(),
new NAKACK2(),
new UNICAST3(),
new STABLE(),
new GMS(),
new UFC(),
new MFC(),
new FRAG2()};
但出于某种原因,如果将 num_discovery_runs
设置为 10,发现将不再起作用并且不再响应。当 num_discovery_run
设置为 3 时,它 运行 是发现,但只有一次。
它没有运行它三遍。它只是在 3000 毫秒后发现没有可用的协调器并创建了自己的协调器(我想通过更多发现 运行s 来防止这种情况)。
当前代码如下所示
channel = new JChannel(prot_stack).setReceiver(this).addChannelListener(this);
channel.setDiscardOwnMessages(true);
channel.setName("RFID Cluster");
channel.connect("RFID Cluster");
我做错了什么?为什么我不能将发现数量 运行s 更改为高于 3(这甚至不起作用)。
根据 documentation 这应该可行。
您发现了一个错误!
我创建了 [1],修复了它并将更改提交给 master
。您可以通过从源代码创建 JAR 来尝试修复(ant jar
或 mvn package
即可),或者等待 4.1.5 发布。这将需要几周时间。
解决方法:不要将 num_discovery_runs
设置为大于 1
的值。