为了账号安全,请及时绑定邮箱和手机立即绑定

Apache Ignite 2.6 无限循环将客户端连接到服务器

Apache Ignite 2.6 无限循环将客户端连接到服务器

MM们 2021-08-04 16:14:37
当我启动客户端节点并连接到服务器时,我在服务器日志中得到无限循环的消息|[2018.08.21 17:01:22.997]|INFO |r-tcp-comm-1-#26|TcpCommunicationSpi           | Accepted incoming communication connection [locAddr=/10.144.193.157:48100, rmtAddr=/10.144.13.223:46208]|[2018.08.21 17:01:22.999]|INFO |r-tcp-comm-1-#26|TcpCommunicationSpi           | Received incoming connection from remote node while connecting to this node, rejecting [locNode=ce9b6147-671b-4351-a142-d251a1362920, locNodeOrder=1, rmtNode=866f0d34-8d0c-48a7-809a-a89aeaf0e7f4, rmtNodeOrder=3]我的客户端配置        IgniteConfiguration igniteConfiguration = new IgniteConfiguration();        igniteConfiguration.setClientMode(true);        igniteConfiguration.setPeerClassLoadingEnabled(true);        TcpCommunicationSpi cspi = new TcpCommunicationSpi();        cspi.setSocketWriteTimeout(60000);        TcpDiscoverySpi dspi = new TcpDiscoverySpi();        TcpDiscoveryVmIpFinder ipFinder = new TcpDiscoveryVmIpFinder();        ipFinder.setAddresses(Collections.singletonList(igniteHost + ":" + ignitePorts));        dspi.setIpFinder(ipFinder);        igniteConfiguration.setDiscoverySpi(dspi);        igniteConfiguration.setCommunicationSpi(cspi);有时(在快速关闭并启动客户端应用程序后)客户端连接到服务器没有问题。如果阻止 (oldFut instanceof ConnectFuture && locNode.order() < rmtNode.order())反向连接,我在TcpConnectSpi 中被罚款。在TcpConnectionSpi 中,我看到只有当 oldFut 为空时我才会连接,当这是第一次连接到服务器时 oldFut 可以为空,但在另一个块中早期是 init oldFut 链接对象。如何创建稳定的客户端到服务器的连接?PS我使用spring boot 2.0.3和ignite 2.6.0。Ignite bean 以 Ignition.start(cfg) 开头。
查看完整描述

3 回答

?
UYOU

TA贡献1878条经验 获得超4个赞

我们使用 2.6.0 和 2.3.0 版本测试我们的配置。在 2.3.0 这个配置工作正常。在分析 repo 之后,我们发现了一些对 TcpCommunicationSpi 类的提交,这些提交改变了一些进行通信连接的方法。我们继续使用 2.3.0 版本作为更稳定的版本。


查看完整回答
反对 回复 2021-08-04
?
慕勒3428872

TA贡献1848条经验 获得超6个赞

这些消息通常表明您有网络拓扑问题。确保两个客户端都可以连接到服务器端口,并且服务器可以连接到客户端端口。


查看完整回答
反对 回复 2021-08-04
  • 3 回答
  • 0 关注
  • 298 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信