Apache ignite 客户端应用找不到服务器集群



>我正在使用以下配置,在我的本地计算机上运行一个集群,其端口范围与下面相同 (37500..37509)

IgniteConfiguration cfg = new IgniteConfiguration();
cfg.setClientMode(true);
TcpDiscoverySpi spi = new TcpDiscoverySpi();
TcpDiscoveryMulticastIpFinder ipFinder = new TcpDiscoveryMulticastIpFinder();
ipFinder.setMulticastGroup("127.0.0.1");
// Set initial IP addresses.
// Note that you can optionally specify a port or a port range.
ipFinder.setAddresses(Arrays.asList("127.0.0.1:37500..37509"));
spi.setLocalPort(37508);
spi.setLocalPortRange(0);
TcpCommunicationSpi commSpi=new TcpCommunicationSpi();
commSpi.setLocalPort(37509);
// Overriding discovery SPI.
cfg.setDiscoverySpi(spi);
// Overriding communication SPI.
cfg.setCommunicationSpi(commSpi);
try (Ignite ig = Ignition.start(cfg)) {
    IgniteCache<Integer, String> cache = ig.getOrCreateCache("myCacheName");
    cache.put(1, "vlad");
    cache.get(1);
}

我收到以下错误消息:

[17:51:14] IP finder returned empty addresses list. Please check IP finder configuration and make sure multicast works on your network. Will retry every 2 secs.

有什么想法吗?

显示错误本身是因为您没有将 IP 查找器设置为发现 SPI(spi.setIpFinder(ipFinder) )。

但是,您还应该注意,DiscoverySpiCommunicationSpi是两个不同的组件,它们使用不同的端口。您在此处执行的操作是将通信绑定到发现将尝试连接到的端口之一。用于发现和通信的端口范围不应相交。

最新更新