【问题标题】:Redis Cache throws OOM Error with volitile-lruRedis Cache 使用 volitile-lru 引发 OOM 错误
【发布时间】:2018-10-11 22:02:50
【问题描述】:

为了调试,我们将 Redis 设置为 volitile-lru 和 10mb 的最大内存

我们在电子商务商店中使用 Redis 进行 HTTP 缓存 - 当页面上有并行请求时,错误:

OOM command not allowed when used memory > 'maxmemory'

出现。不应该通过将 maxmemory-policy 设置为 volitile-lru 来避免这种情况吗? redis 是否不够快,无法释放内存并设置新内存(每个请求大约有 200-600kb)

【问题讨论】:

    标签: caching redis lru


    【解决方案1】:

    来自文档:

    volatile-lru: evict keys by trying to remove the less recently used (LRU) keys first, but only among keys that have an expire set, in order to make space for the new data added.

    您的密钥似乎没有过期。如果是这种情况,您可能需要考虑使用 allkeys-lru 作为您的驱逐政策。

    您还可以使用INFO stats 来查看evicted_keys 的值是否大于零。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多