欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

解决Redis启动警告问题

程序员文章站 2024-03-27 09:34:58
如果启动前不对linux内核做任何更改,那么redis启动会报出警告,共三个:如下图所示第一个警告:the tcp backlog setting of 511 cannot be enforced...

如果启动前不对linux内核做任何更改,那么redis启动会报出警告,共三个:如下图所示

解决Redis启动警告问题

第一个警告:the tcp backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.

意思是:tcp  backlog设置值,511没有成功,因为 /proc/sys/net/core/somaxconn这个设置的是更小的128.

临时解决方法:(即下次启动还需要修改此值)

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

永久解决方法:(即以后启动还需要修改此值)

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

baklog参数实际控制的是已经3次握手成功的还在accept queue的大小。

参考

第二个警告: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.

意思是:overcommit_memory参数设置为0!在内存不足的情况下,后台程序save可能失败。建议在文件 /etc/sysctl.conf 中将overcommit_memory修改为1。

临时解决方法:echo "vm.overcommit_memory=1" > /etc/sysctl.conf

永久解决方法:将其写入/etc/sysctl.conf文件中。

参考:

第三个警告:you have transparent huge pages (thp) support enabled in your kernel. this will create latency and memory usage issues with redis. to fix thisissue 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 thesetting 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文件中。

参考。

到此这篇关于解决redis启动警告问题的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持。