当我启动客户端节点并连接到服务器时,我在服务器日志中得到无限循环的消息
|[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) 开头。
UYOU
慕勒3428872
相关分类