你好我有一个特定的任务要在 EhCache 中解决,但我无法实现它。
我想建立一个“永恒的缓存”,它将在内存中有少量项目以供立即使用,其余的将保留在磁盘上。我通常将数据写入多个线程中的缓存,并希望将这些项目一直保存在磁盘上,这样即使在重新启动后我也可以使用它们。
<cache name="eternal_cache" maxBytesLocalHeap="1%" maxBytesLocalDisk="2G"
eternal="false" timeToLiveSeconds="0"
timeToIdleSeconds="120" overflowToDisk="true"
diskPersistent="true" memoryStoreEvictionPolicy="LFU"
transactionalMode="off"/>
基本上我想要 EhCache 中的持久性功能,它是通过 定义的,但有大小限制,这是持久性不允许的。
我遇到了一个问题,即我的配置在内存中有项目,但没有正确关闭 ehcache 管理器会丢失我的数据。我阅读了有关 flush() 的信息,但它会将项目保留在磁盘上,但我希望至少有一些数据在内存中。
你能告诉我如何根据我的需要配置缓存吗?