redis内存不够 : OOM command not allowed when used memory > ‘maxmemory’


Redis内存不够,报错。

三种解决思路

注:如修改了配置文件需重启redis

1. 增加redis内存,修改redis.conf(集群中为redis-env.sh),默认为1024MB,增加到合适的内存。

maxmemory 2gb

 

 

2. 修改redis存储策略

默认的redis设置是非常保守的,即内存超限后就不在存储,可以把策略修改为LRU算法(最近最少使用算法)——新存储的信息会替换掉旧的信息,从而不会是内存越线,修改redis.conf。这个必须结合业务场景,如果没有自动加载数据到redis的缓存机制,会造成数据缺少。我觉得可以往这方面靠,能最大利用资源。

maxmemory-policy volatile-lru

 

 

3. 少往reids存数据

是否有必要把这么多数据存入redis?


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM