ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

Redis 服务常见的几个错误解决方案

2020-06-06 15:01:52  阅读:651  来源: 互联网

标签:kernel sysctl 错误 解决方案 redis sys etc memory Redis


问题一 :somaxconn 

redis启动警告问题:WARNING: The TCP backlog setting of 511 cannot be 
enforced because /proc/sys/net/core/somaxconn is set 
to the lower value of 128.

这句话的翻译大概就是:对一个高负载的环境来说tcp设置128这个值,太小了。 
这是我的理解,绝对的还需到官网理解。然后我们可以手动设置,或者设置永久值

临时解决方案

echo 512 > /proc/sys/net/core/somaxconn

长期解决方案

sudo vim /etc/sysctl.conf

#net.core.somaxconn= 1024 然后执行sysctl -p 就可以永久消除这个warning

 

问题二:overcommit_memory

WARNING overcommit_memory is set to 0! Background save may fail 
under low memory condition. 
To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf 
and then reboot or run the command 'sysctl vm.overcommit_memory=1' 
for this to take effect

 

解决方案

sudo vim /etc/sysctl.conf

#改vm.overcommit_memory=1,然后sysctl -p 使配置文件生效

 

问题三:Transparent Huge Pages

WARNING you have Transparent Huge Pages (THP) support enabled 
in your kernel. This will create latency and memory usage issues 
with Redis. To fix this issue run the command 
'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, 
and add it to your /etc/rc.local in order to 
retain the setting after a reboot. 
Redis must be restarted after THP is disabled

意思是:你使用的是透明大页,可能导致redis延迟和内存使用问题。
执行echo never > /sys/kernel/mm/transparent_hugepage/enabled修复该问题

临时解决方法

echo never > /sys/kernel/mm/transparent_hugepage/enabled

永久解决方法

将其写入/etc/rc.local文件中

iftest -f /sys/kernel/mm/redhat_transparent_hugepage/enabled; then
    echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled
fi

 

问题四:bind: Cannot assign requested address

 

发现启动redis启动失败,看redis的日志问题,提示信息如下

 

Creating Server TCP listening socket ::1:6379: bind: Cannot assign requested address

解决方案

将  /etc/redis/redis.conf 文件里面的bind改成
bind 0.0.0.0

问题五:MISCONF Redis is configured to save RDB snapshots

MISCONF Redis is configured to save RDB snapshots, but it is currently 
not able to persist on disk

 

解决方案

sudo vim /etc/redis/redis.conf
# 将 stop-writes-on-bgsave-error 接着把后面的yes设置为no即可

 


原文地址:Redis 服务常见的几个错误解决方案
标签:redis   samaxconn   bind   huge   

标签:kernel,sysctl,错误,解决方案,redis,sys,etc,memory,Redis
来源: https://www.cnblogs.com/maowenjie/p/13054750.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有