我意识到@Cacheable注释可以帮助我缓存特定方法调用的结果,如果没有对参数的更改等,则从缓存中返回后续调用 .
我有一个要求,我试图最小化对数据库的调用次数,从而加载整个表 . 但是,我想每天重新加载这些数据,以确保我的缓存不会与数据库中的基础数据不同步 .
如何指定此类重新加载/刷新间隔 .
我正在尝试使用Spring启动和hazelcast . 我所看到的所有示例都谈到在配置文件中为 Map 等指定LRU LFU等策略但在方法级别没有任何内容 . 我不能使用LRU / LFU等驱逐策略,因为我打算每隔x小时或x天重新加载整个表格数据 .
请帮助或指出任何此类实施或文档等 .
1 回答
Spring
@Cacheable
在方法级别不支持此类策略 . 例如,参见CacheableOperation的代码 .如果您使用hazelcast作为spring的缓存提供程序,则可以使用HazelcastInstance中的相应IMap显式驱逐元素或加载数据 .