1

我创建了一个以复制模式运行 Infinispan 缓存的两节点集群。我看到缓存很好。并且两个节点相互连接。我在这里使用 TreeCache Api 将基于 Map 的结构转换为基于树的结构,如下所示:

private static Cache<Object, Object> Cache1;
private static TreeCache<Object, Object> Cache;

Cache1 = new DefaultCacheManager("infinispan.xml").getCache();
Cache = new TreeCacheFactory().createTreeCache(Cache1);

如果我调用 Cache.put ,我不会收到任何错误,但该条目不会保存到缓存中。我通过再次获取返回 NULL 的数据来确认它。

Cache.put(fqn,key, value);

if(Cache.get(fqn, key) == null)
{
    System.out.println("Entry is not saved");
}

下面是配置文件,

 <?xml version="1.0" encoding="UTF-8"?>
 <infinispan xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="urn:infinispan:config:5.3 http://www.infinispan.org/schemas/infinispan-config-5.3.xsd"
      xmlns="urn:infinispan:config:5.3">

   <global>
        <globalJmxStatistics enabled = "true" allowDuplicateDomains = "true"/>
        <transport clusterName = "test_cluster">
           <properties>
              <property name="configurationFile" value="tcp.xml" />
           </properties>
        </transport>
   </global>

   <default>
     <clustering mode="replication">
        <async asyncMarshalling="true" useReplQueue="true" replQueueInterval="10" replQueueMaxElements="100" />
        <stateTransfer timeout="2000000"/>
     </clustering>
    <invocationBatching enabled = "true"/>
    <locking isolationLevel          = "REPEATABLE_READ"
             writeSkewCheck          = "false"
              concurrencyLevel        = "1000"/>
     <jmxStatistics enabled="true"/>
   </default>
</infinispan>

是我缺少初始化任何东西吗?

4

0 回答 0