在memeory缓存命中计数中的EHCACHE在骆驼Fuse的每次命中都显示两次

时间:2015-12-08 01:31:35

标签: ehcache jbossfuse

内存中的

命中数量是EHCACHE中预期值的两倍。这是预期的行为吗?当我第一次点击它时,它正确地将cacheMiss计数显示为1,但是从高速缓存中的每个用户的命中计数中读取的后续命中总是2。

我首先尝试从Cache中获取数据,如果没有找到,则在缓存中添加它。在这个过程中,命中率是错过的两倍。

<route handleFault="true" streamCache="true" id="MainRoute">
    <from uri="direct:start"/>
     <setHeader headerName="CamelCacheOperation">
      <constant>CamelCacheGet</constant>
    </setHeader>
    <setHeader headerName="CamelCacheKey">
      <simple>${property.employeeId}</simple>
    </setHeader>
    <to uri="cache://EmployeeCache"/>
    <choice>
      <when>
        <simple>${header.CamelCacheElementWasFound} == null</simple>
        <to uri="direct:AddDataRoute"/>
        <setHeader headerName="CamelCacheOperation">
          <constant>CamelCacheAdd</constant>
        </setHeader>
        <setHeader headerName="CamelCacheKey">
          <simple>${property.employeeId}</simple>
        </setHeader>
        <to uri="cache://EmployeeCache"/>
      </when>
    </choice>
  </route>

===== Fuse Ehcache Statistics for the above senario

1 个答案:

答案 0 :(得分:0)

我建议查看访问缓存的代码。最新版本中没有任何已知错误,每次缓存命中计数两次。