Redis 内存不足时是否可以使用硬盘?
Is Redis capable of using hard disk when it runs out of memory?
Redis 是 Java's Spring session storage 的默认实现。但是 Redis 是内存中的值键存储,迟早会 运行 内存不足。一旦完成,它将执行以下操作之一:
- 为请求新内存的命令抛出错误
- 根据配置中设置的策略释放内存 (
maxmemory-policy
)。
我看到 Redis 中有一个名为 Virtual Memory 的功能,但它已经停用,从 2.4 版开始,它不可用。
Redis 是否能够在 运行 内存不足时使用硬盘作为备份存储,或者它真的不是会话存储的最佳选择?或者也许 Redis 依赖于 OS 使用交换作为最后的手段?
我正在使用 Redis 3 和 Spring 会话 1.1.1
是也不是。
Redis 不会在超过 RAM 时崩溃,但确实不推荐。
Redis 作者的一篇有趣的相关文章:http://antirez.com/news/52
这并不意味着 Redis 是会话存储的糟糕选择,它只是意味着您需要 plan/size 根据您的容量要求适当地 architecture/RAM。
Redis 是 Java's Spring session storage 的默认实现。但是 Redis 是内存中的值键存储,迟早会 运行 内存不足。一旦完成,它将执行以下操作之一:
- 为请求新内存的命令抛出错误
- 根据配置中设置的策略释放内存 (
maxmemory-policy
)。
我看到 Redis 中有一个名为 Virtual Memory 的功能,但它已经停用,从 2.4 版开始,它不可用。
Redis 是否能够在 运行 内存不足时使用硬盘作为备份存储,或者它真的不是会话存储的最佳选择?或者也许 Redis 依赖于 OS 使用交换作为最后的手段?
我正在使用 Redis 3 和 Spring 会话 1.1.1
是也不是。
Redis 不会在超过 RAM 时崩溃,但确实不推荐。
Redis 作者的一篇有趣的相关文章:http://antirez.com/news/52
这并不意味着 Redis 是会话存储的糟糕选择,它只是意味着您需要 plan/size 根据您的容量要求适当地 architecture/RAM。