我有一个配置,其中缓存保存在一个节点中并从另一个节点访问。虽然我能够很好地获取()和放置(),但某些操作(如 size()、keySet() 等)不会返回正确的结果。
Test1 客户端节点缓存配置
<bean id="test-cache" class="org.gridgain.grid.cache.GridCacheConfiguration">
<property name="name" value="testCache"/>
<property name="cacheMode" value="PARTITIONED"/>
<property name="distributionMode" value="CLIENT_ONLY" />
<property name="swapEnabled" value="true"/>
</bean>
Test1 客户端节点类
public class GridGainTest1
{
public static void main(String[] args) throws Exception
{
//Client Mode
Grid g = GridGain.start("etc/config/grid-test1.xml");
//Put in Remote Cache
g.cache("testCache").put(1, "ABC");
g.cache("testCache").put(2, "XYZ");
System.out.println("Size of Cache :- " + g.cache("testCache").size());
System.out.println("Value for 1 :- " + g.cache("testCache").get(1));
System.out.println("Value for 2 :- " + g.cache("testCache").get(2));
}
Test2 数据节点缓存配置
<bean id="test-cache" class="org.gridgain.grid.cache.GridCacheConfiguration">
<property name="name" value="testCache"/>
<property name="cacheMode" value="PARTITIONED"/>
<property name="swapEnabled" value="true"/>
</bean>
Test2 数据节点类
public class GridGainTest2
{
public static void main(String[] args) throws Exception
{
Grid g = GridGain.start("etc/config/grid-test2.xml");
}
}
节点 1 的输出如下所示,其中 size 为 0,即使映射中有条目。我不确定这是否是由于一些错误配置造成的。
Size of Cache :- 0
Value for 1 :- ABC
Value for 2 :- XYZ