大家好,我是考100分的小小码 ,祝大家学习进步,加薪顺利呀。今天说一说redis运行一段时间之后假死[通俗易懂],希望您对编程的造诣更进一步.
-
现象:redis运行一段时间之后就会出现假死的现象
- 假死指的是:进程在、pid在、telnet 端口是通的、redis-cli命令可以连接,但无法查询数据,查询的时候报错,如下图:
- 可以看到这个报错是有关权限的,但可以确认该redis并没有设置密码,况且已经运行了一段时间之后,突然开始不正常的
-
尝试解决:
- 观察redis的运行日志发现在重启redis的时候会有warning,如下图
- 因为没有报错所有先解决warning,然后经过各种尝试,得解决方案如下:
1. 修改内核参数,3种方法,任选其一: 1)编辑/etc/sysctl.conf ,改vm.overcommit_memory=1,然后sysctl -p 使配置文件生效 2)sysctl vm.overcommit_memory=1 3)echo 1 > /proc/sys/vm/overcommit_memory 2. 修改redis.conf,然后重启redis maxmemory 3G maxmemory-policy allkeys-lru maxmemory-samples 3
代码100分
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/10563.html