骡子缓存 - 到期

时间:2015-03-09 22:47:34

标签: caching mule

如何为mule中的缓存条目设置到期时间?我正在为传入的请求设置基于keyExpression的缓存,如下所示:

   <ee:object-store-caching-strategy name="UserAuth-CachingStrategy" keyGenerationExpression="#[message.inboundProperties.'authorization']" doc:name="Caching Strategy">

缓存应该命中外部WS,结果应该缓存5分钟。如果我设置一个带有TTL的“内存”商店,比方说5分钟,那么mule并不尊重这个请求。无论TTL的值如何,mule总是每3-4次请求就会击中实际的外部ws。如果我没有为TTL设置任何值,则缓存永不过期。如何在mule中为“内存中”缓存正确设置缓存?

由于

1 个答案:

答案 0 :(得分:0)

如果您正在使用ObjectStore,您可以使用spring属性轻松设置如下所示,并将您的缓存策略引用到它: - http://ricston.com/blog/cache-scope-ehcache/

您还可以使用以下管理商店: -

<ee:object-store-caching-strategy nname="UserAuth-CachingStrategy" keyGenerationExpression="#[message.inboundProperties.'authorization']" doc:name="Caching Strategy">
<managed-store storeName="myNonPersistentManagedObjectStore" maxEntries="-1" entryTTL="20000" expirationInterval="5000"/>
</ee:object-store-caching-strategy>