【问题标题】:EhCache data to disk without flushEhCache 数据到磁盘而不刷新
【发布时间】:2013-03-15 16:29:29
【问题描述】:

您好,我在 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() 的信息,但它会将项目保留在磁盘上,但我希望至少有一些数据在内存中。

你能告诉我如何根据我的需要配置缓存吗?

【问题讨论】:

    标签: performance persistence ehcache


    【解决方案1】:

    阅读官方手册后,我找到了解决方案。

    可以仅使用 Ehcache Persistence 策略进行持久化,但在 Enterprise 版本中。

    在普通版本中,只能调用flush()shutdown()

    【讨论】:

      猜你喜欢
      • 2019-09-22
      • 1970-01-01
      • 2014-10-11
      • 1970-01-01
      • 1970-01-01
      • 2014-12-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多