我正在使用Spring框架和Java CXF服务。
我的项目要求每隔15分钟从数据库刷新一次缓存。从数据库中提取数据平均需要一分钟。因此,当这一分钟操作(缓存从db刷新)时,如果我尝试访问缓存,它应该返回先前存储的值。
时间表是 - >
0分钟:应用程序启动。缓存刷新的触发器。
0.5分钟:通过查询数据库
加载缓存1分钟:加载缓存(例如:xyz)
5分钟:访问缓存并返回xyz
15分钟:缓存应该刷新(新的缓存值将是16分钟的xyw)
15.5分钟:通过查询数据库加载缓存。此时,如果访问高速缓存,它应返回先前的高速缓存值,因为新高速缓存现在处于不一致状态。 (应该返回xyz)
16分钟:重新加载缓存。如果现在访问,则应返回xyq。
我有两个问题:
<ehcache> <cache name="mycache" maxElementsInMemory="3000" eternal="false" timeToIdleSeconds="60000" timeToLiveSeconds="60000" overflowToDisk="true" diskPersistent="false" /> <persistence strategy="localTempSwap" synchronousWrites="true" /> </cache> </ehcache>
答案 0 :(得分:0)
数目: