【问题标题】:"positive" cache when got a user request - ehcache收到用户请求时的“正”缓存 - ehcache
【发布时间】:2015-08-24 02:50:15
【问题描述】:

我负责提高我的 web 应用程序的性能,当然,解决方案必须是缓存。

目前,系统提供的 rss 数据应该有点新鲜,问题是它使 mysql 加载如此之重。实际上,我用 ehcache 缓存了 1 分钟。意思是1分钟后数据过期,当倒霉用户来的时候,他们的体验会比平时慢。

ehcache的配置如下:

<cache name="news.list" maxEntriesLocalHeap="1000" eternal="false" timeToLiveSeconds="60" statistics="true"
       memoryStoreEvictionPolicy="FIFO">
</cache>

我称之为负缓存,我也在考虑正缓存。如果数据缓存过期了,它仍然会返回旧的缓存数据,并执行一个并行任务来为其他客户填充最新的数据。

ehcache 有什么技术支持吗?

欢迎任何想法, 谢谢。

【问题讨论】:

    标签: java spring ehcache


    【解决方案1】:

    您需要的是所谓的refresh-ahead 缓存。这样您就可以指示您的缓存始终查找过期条目并在后台刷新它们。因此,当您的用户出现时,他们可能会发现为他们预先加载的新鲜(即时可用)信息。

    您仍然需要小心您的整体配置。 缓存做得不好会导致应用性能下降。在完全了解其范围并尽可能进行测试之前,您不应应用任何类型的缓存方法。

    【讨论】:

    • 谢谢你,非常详细和乐于助人。
    猜你喜欢
    • 2014-08-12
    • 2013-07-13
    • 2021-04-02
    • 1970-01-01
    • 1970-01-01
    • 2016-09-17
    • 1970-01-01
    • 2017-10-25
    • 2016-04-24
    相关资源
    最近更新 更多