java Hazelcast缓存打印过多日志(忽略[10.10.10.10]:5702中的连接检查,因为此节点不是主节点…)
我正在为我的应用程序使用Hazelcast缓存。 我在两台不同的机器上有两个Jboss节点。 每个节点有两个部署。 每个部署文件都有自己的hazelcast缓存
我想为每个应用程序在两个节点之间进行集群,下面是我的配置
Config config = new Config();
config.setClusterName("uniqueClusterName");
config.getNetworkConfig().getJoin().getTcpIpConfig().addMember("10.100.101.82,10.100.101.83").setEnabled(true);
config.getNetworkConfig().getJoin().getMulticastConfig().setEnabled(false);
manager = Hazelcast.newHazelcastInstance(config);
我上面的配置工作正常,两个节点都在每个应用程序上创建集群
但我发现了下面的日志,这些日志一直在打印
INFO [com.hazelcast.internal.cluster.impl.operations.SplitBrainMergeValidationOp] (hz.cocky_jackson.priority-generic-operation.thread-0) [10.100.101.82]:5702 [losce_qa] [4.1] Ignoring join check from [10.100.101.83]:5702, because this node is not master...
INFO [com.hazelcast.internal.cluster.impl.operations.SplitBrainMergeValidationOp] (hz.hungry_hofstadter.priority-generic-operation.thread-0) [10.100.101.82]:5701 [losce_qa] [4.1] Ignoring join check from [10.100.101.83]:5702, because this node is not master...
INFO [com.hazelcast.internal.cluster.impl.operations.SplitBrainMergeValidationOp] (hz.cocky_jackson.generic-operation.thread-1) [10.100.101.82]:5702 [losce_qa] [4.1] Ignoring join check from [10.100.101.83]:5702, because this node is not master...
有工作吗?如何避免这些日志或我在这里做错了什么
短暂性脑缺血发作
# 1 楼答案
共享相同硬件的两个集群并不理想,因为它们争夺机器资源
但是如果您这样做了,您就不希望它们发生冲突,这是默认端口分配的结果。默认情况下,尝试在端口5701上侦听,如果忙,则尝试5702,依此类推。并尝试寻找其他集群成员,假设他们也在5701上
要使其发挥作用:
(1)像你所做的那样,给他们起唯一的名字
&
由于它们具有不同的群集名称,来自一个群集的成员将无法 加入另一个。这不会阻止他们尝试,这会导致不需要的日志消息
(2)分配可预测的端口
试一试
&
他们都会尝试从不同的偏移量开始寻找端口,这将允许可预测性
如果不这样做,两个集群将尝试使用默认的5701作为第一个端口,并且无论哪个集群首先启动,都将成功
这样,第一个集群的成员将尝试并应该成功获得6701。第二个集群的成员将尝试并应成功获得7701
(3)指定连接尝试的地址和端口
试一试
及