Spring Infinispan应用程序未在Infinispan集群中使用缓存

时间:2017-02-15 08:58:52

标签: spring caching infinispan

我试图在Infinispan上使用Spring Caching。我使用的是Spring Boot 3.2.8版和Infinispan版本8.2.4

在我的申请表中我已经

@Component
@CacheConfig(cacheNames = "rtdm")
public class CacheRepository {

@Cacheable
public String findByCode(String code) {
     ...
}

我使用infinispan-spring4-embedded所以我已经

spring.cache.infinispan.config=infinispan.xml

在我的属性文件中,然后在我的infinispan.xml文件中

<?xml version="1.0" encoding="UTF-8"?>
<infinispan>

   <jgroups>
       <stack-file name="udp" path="jgroups.xml" />
   </jgroups>

   <cache-container default-cache="rtdm">
      <transport stack="udp" node-name="${nodeName}" />
      <replicated-cache name="rtdm"/>
   </cache-container>
</infinispan>

缓存实际上似乎正在起作用,即第一次调用方法被调用,随后它不会 - 这很好。 但是,我并不相信它实际上使用了我在集群中设置的RTDM缓存,因为当我查看JMX时,所有属性都显示0操作。 为了清楚起见我已经为我的群集使用独立模式,并且我已将以下内容添加到我的clustered.xml文件中

<cache-container name="rtdm-container" default-cache="rtdm">
    <transport lock-timeout="60000"/>
    <replicated-cache mode="SYNC" name="rtdm" start="EAGER"/>
</cache-container>

我相信在我的两个节点集群中,我的infinispan实例正在相互通信,因为日志表明情况就是如此。 我是朝着正确的方向前进的,还是有人能发现我做错的事情?

0 个答案:

没有答案