最新消息:

Redis 常见问题

Reids 老鹰 194浏览 0评论

一)启动时warning修复方法:

# WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
修复方法如下:
第一步)编辑文件 nano /etc/rc.local
第二步)添加信息 sysctl -w net.core.somaxconn=65535 【使用(Ctrl + x)进行退出,会提示Y保存,N取消】
第三步)重启服务器 reboot now
说明:此参数是系统参数,是tcp backlog的队列的一个默认参数。
# 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.
从提示中我们看到有如下2种方式:
1)执行sysctl vm.overcommit_memory=1命令,可以在重启前有效,重启后无效。
2)添加到配置文件里
内核参数解释:
overcommit_memory文件指定了内核针对内存分配的策略,其值可以是0、1、2。
0, 表示内核将检查是否有足够的可用内存供应用进程使用;如果有足够的可用内存,内存申请允许;否则,内存申请失败,并把错误返回给应用进程。
1, 表示内核允许分配所有的物理内存,而不管当前的内存状态如何。
2, 表示内核允许分配超过所有物理内存和交换空间总和的内存
# 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.
执行了提示中的命令后,通过如下命令即可看到大内存页面是否关闭:
grep Huge /proc/meminfo
————————————————————
AnonHugePages: 22528 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB

转载请注明:冯英胜的博客 » Redis 常见问题

发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址