Redis为何要设置maxmemory?

设置了,超过了就会OOM,还不如不设置啊

阅读 5k
4 个回答

不设置等着被系统kill掉?

Redis缓存不是数据存储,Redis缓存是避免大量的数据读写落到硬盘上而缓存的热点数据,所以redis上没有的数据应用应该到磁盘上读取,设置最大内存有两个好处,一是避免系统资源用尽而崩溃,而是内存太大必然影响效率如内存管理。

另外设置了最大内存,当你要缓存的数据大于最大内存时,并不会引起OOM,Redis会根据淘汰算法淘汰掉他认为不会是热点的数据。

最大内存设置更多是考虑作为缓存的场景的,即限制最大缓存
要配合策略使用,比如超过限制之后按照各种策略丢弃数据,或者默认kill自己
参考这里

还是要限制的好

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏