如何在Web应用程序之间共享Ignite实例?

时间:2019-05-28 13:02:24

标签: ignite

我正在尝试做一个演示应用程序,该应用程序读取一些数据并将其缓存到Ignite。这是一个tomcat Web应用程序。我想在另一台机器上启动另一个tomcat Web应用程序,并希望从第一个Webapp的ignit中读取数据。无论我使用什么配置,看起来第二个应用程序都找不到第一个点火实例?

我已经尝试使用TcpDiscoveryMulticastIpFinder和TcpDiscoveryVmIpFinder

以下是我尝试过的配置之一

   <property name="discoverySpi">
        <bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
            <property name="ipFinder">
                <bean class="org.apache.ignite.spi.discovery.tcp.ipfinder.multicast.TcpDiscoveryMulticastIpFinder">
                    <property name="multicastGroup" value="228.111.111.222"/>
                </bean>
            </property>
        </bean>
    </property>

也尝试在配置下进行

      <bean class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder">
      <property name="addresses">
        <list>
            <!--local node -->
          <value>165.80.121.125</value>

            <!--Remote node -->
          <value>165.80.113.121</value>
        </list>
      </property>
    </bean>

在两种情况下,我都看不到第二个节点连接到第一个节点。 我还尝试将第一个节点作为服务器启动,将第二个节点作为客户端启动,但是仍然没有成功。谁能建议我要去哪里错了?

我应该启动一个独立的点火客户端,然后在两个应用程序中以客户端模式启动点火吗?那行得通吗?

1 个答案:

答案 0 :(得分:0)

似乎您应该组织应用程序体系结构,使其具有单独的服务器节点和Ignite客户端。客户端节点可以嵌入到您的Web应用程序实例中。通常,客户端节点不存储数据,它们的目的是充当服务器节点的“外观”。