Apache Ignite:测试实用程序

Apache Ignite: test utilities

Apache Ignite 是否提供任何测试实用程序,可以用来在单元测试和集成测试的测试中轻松启动多节点集群?

据我所知没有这样的事情。在同一个 JVM 中启动多个 Ignite 节点非常简单,无需任何其他工具。

要在同一个 JVM 中启动多个节点,您需要在每个节点的配置中指定 igniteInstanceName

为了让所有节点都能看到彼此,使用 TcpDiscoveryVmIpFinder without any addresses in it and with shared 标志设置为 true 很方便。它将使所有使用此类 IP 查找器的相同实例的节点相互看到。

以下代码可用于创建节点配置:

static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);

IgniteConfiguration getConfiguration(String instanceName) {
    IgniteConfiguration igniteConfig = new IgniteConfiguration();
    igniteConfig.setIgniteInstanceName(instanceName);

    TcpDiscoverySpi discoverySpi = new TcpDiscoverySpi();
    discoverySpi.setIpFinder(IP_FINDER);

    igniteConfig.setDiscoverySpi(discoverySpi);

    return igniteConfig;
}