Redis是否能够在内存不足时使用硬盘?

时间:2016-03-25 21:55:00

标签: java redis spring-session

Redis是Java's Spring session storage的默认实现。但Redis是一个内存中的价值密钥存储,迟早会耗尽内存。一旦确实如此,它将执行以下操作之一:

  • 为请求新内存的命令引发错误
  • 根据配置(maxmemory-policy)中设置的策略释放内存。

我发现Redis中有一些名为Virtual Memory的功能,但它已经停止使用,从版本2.4开始,它就不可用了。

Redis是否能够在内存不足时使用硬盘作为备份存储,或者它是否真的是会话存储的不良选择?或者Redis可能依赖OS来使用swap作为最后的手段?

我使用 Redis 3 Spring会话1.1.1

1 个答案:

答案 0 :(得分:4)

是和否。

当你超过内存时,Redis不会摔倒,但实际上并不推荐。

Redis作者的一篇有趣的相关文章:http://antirez.com/news/52

这并不意味着Redis是会话存储的糟糕选择,它只是意味着您需要根据容量需求适当地规划/调整架构/ RAM。