今天是年前最后一篇文章了,不想寫太多的東西,就寫一些有關Redis相關問題的解決方案。當我們啟動了Redis服務器之后,會看到3個警告,如果沒看到,那是很好的,但是我看到了。看到了就不能不管,所以就好好的解決一下。我把這三個警告的信息截圖了,大家可以有更直接的感覺。效果截圖如下:
1)、第一個警告信息提示:The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128
2)、第二個警告信息提示: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.
這兩個問題的解決方法很簡單,晚上也有類似的解決方案。
解決:
//針對這兩個問題,都要修改/etc/sysctl.conf文件,在文件末尾加入以下兩句: net.core.somaxconn= 1024 vm.overcommit_memory = 1
3)、第三個警告信息提示: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.
這個問題不容易解決,我搞了好久才搞定的,所以必須記錄下來,否則以后想看看都不容易。
大家想了解跟多情況,可以查看該博客 http://docs.fedoraproject.org/en-US/Fedora/21/html/System_Administrators_Guide/sec-GRUB_2_over_Serial_Console.html#sec-Configuring_GRUB_2 。
第一種方式:
我們開始第三個問題的解決吧,如果你也是grub2的linux系統,請通過以下步驟關閉大內存頁面。
步驟一、 編輯 /etc/default/grub,在GRUB_CMDLINE_LINUX加入選項 transparent_hugepage=never
GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)" GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL_OUTPUT="console" GRUB_CMDLINE_LINUX="rd.lvm.lv=fedora/swap rd.lvm.lv=fedora/root rhgb quiet transparent_hugepage=never" GRUB_DISABLE_RECOVERY="true"
步驟二、 重新生成grub配置文件
[root@linux ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
步驟三、 重啟你的系統
至此大功告成,如果你使用的是grub,請把選項寫入grub.conf文件就好了。
步驟四、查詢hugepage狀態
[root@linux ~]# cat /sys/kernel/mm/transparent_hugepage/enabled
always madvise [never]
第二種方式:
[root@linux ~]$ grep Huge /proc/meminfo AnonHugePages: 0 kB HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB
解決了,還是很高興的。其實這三個警告信息已經提供了解決辦法,有的是臨時方法,有的是永久方法,只是第三個警告不是那么直接好解決。好了,今天就到這里,我在這里祝福大家新年快樂,我自己也新年快樂。