redis 内存满了怎么办?

redis 内存满了怎么办?

  • 不考虑键过期,就把 redis 当数据库用,而不是缓存
  • 不考虑持久化不持久化问题,因为与题目无关

我想知道的是,一个机器内存是 8 GB,硬盘是 1TB,要存入 redis 中的数据量有 100 GB,这个时候当 redis 把内存用满的时候会出现什么情况?

  • 拒绝提供服务
  • 把部分数据存到硬盘,需要查询的时候,去读硬盘获取

请问是哪种?


回答:

看具体配置,默认是会拒绝再有申请新内存的请求,但读取、删除这类的请求正常执行。(这里的默认只原生版本,不包括云厂商提供的云 Redis 服务 —— 它们的默认配置是啥要去看它们自己的文档)

Redis 写硬盘是为了持久化,好在断电、重启等情况下还能恢复过来,并不是为了多级存储。

具体的可以自己去了解 “Redis 内存淘汰策略”。

《Redis 官方文档:FAQ - What happens if Redis runs out of memory?》
《Redis 官方文档:Topic - LRU Cache》


回答:

https://segmentfault.com/a/11...


回答:

redis 内存满了怎么办?
来源
如果你自己设置了maxmemory,那么会根据你的淘汰策略报错或者淘汰一部分key。没有的话通常支持swap/虚拟内存的系统会使用swap,但这时候性能很差。

以上是 redis 内存满了怎么办? 的全部内容, 来源链接: utcz.com/p/938245.html

回到顶部