ehcache 在每次写入时刷新到磁盘
ehcache flushing to disk on every write
我在我的服务器上使用 ehcache 作为热缓存。我希望它完全在内存中,只写入磁盘以实现持久性。从应用程序重新启动时加载回来。
我看到 ehcache 几乎在每个缓存中都写入磁盘。这是文档所说的
Operation of a Cache where overflowToDisk is false and diskPersistent is true
In this configuration case, the disk will be written on flush or shutdown.
The next time the cache is started, the disk store will initialise but will not permit overflow from the
MemoryStore. In all other respects it acts like a normal disk store.
然而,当我检查 /mnt/ehcache 时,我看到它被写入到每个 put 中。它发生的原因是什么?
这是我的缓存配置。
<diskStore path="/mnt/ehcache/" />
<cache
name="feedLocalCache"
maxEntriesLocalHeap="2000000"
eternal="false"
timeToLiveSeconds="1800"
timeToIdleSeconds="0"
diskPersistent="true"
overflowToDisk="false"
memoryStoreEvictionPolicy="LFU" >
<bootstrapCacheLoaderFactory class="net.sf.ehcache.store.DiskStoreBootstrapCacheLoaderFactory" properties="bootstrapAsynchronously=true"/>
怪文档过时了。
从 Ehcache 2.6 开始,最低层,也称为权限 - 在您的情况下为磁盘 - 始终包含所有映射。这是为了提高延迟的可预测性。
所以您看到的是预期的行为。请注意,磁盘写入是异步的,因此不会影响您执行放置的线程 - 除非您写入太多以至于写入队列达到其最大大小。
我在我的服务器上使用 ehcache 作为热缓存。我希望它完全在内存中,只写入磁盘以实现持久性。从应用程序重新启动时加载回来。
我看到 ehcache 几乎在每个缓存中都写入磁盘。这是文档所说的
Operation of a Cache where overflowToDisk is false and diskPersistent is true
In this configuration case, the disk will be written on flush or shutdown.
The next time the cache is started, the disk store will initialise but will not permit overflow from the
MemoryStore. In all other respects it acts like a normal disk store.
然而,当我检查 /mnt/ehcache 时,我看到它被写入到每个 put 中。它发生的原因是什么?
这是我的缓存配置。
<diskStore path="/mnt/ehcache/" />
<cache
name="feedLocalCache"
maxEntriesLocalHeap="2000000"
eternal="false"
timeToLiveSeconds="1800"
timeToIdleSeconds="0"
diskPersistent="true"
overflowToDisk="false"
memoryStoreEvictionPolicy="LFU" >
<bootstrapCacheLoaderFactory class="net.sf.ehcache.store.DiskStoreBootstrapCacheLoaderFactory" properties="bootstrapAsynchronously=true"/>
怪文档过时了。
从 Ehcache 2.6 开始,最低层,也称为权限 - 在您的情况下为磁盘 - 始终包含所有映射。这是为了提高延迟的可预测性。
所以您看到的是预期的行为。请注意,磁盘写入是异步的,因此不会影响您执行放置的线程 - 除非您写入太多以至于写入队列达到其最大大小。