Redis cluster 性能調(diào)優(yōu)

Redis Cluster集群性能調(diào)優(yōu)

    1. 首先需要查看redie的基線性能,以及最大延遲
    • ./redis-cli --intrinsic-latency 120
    • 從 2.8.7 版本開始,redis-cli 命令提供了–intrinsic-latency 選項,可以用來監(jiān)測和統(tǒng)計測試期間內(nèi)的最大延遲,這個延遲可以作為 Redis 的基線性能。其中,測試時長可以用–intrinsic-latency 選項的參數(shù)來指定。(一般120s的檢測就可以看出來了)
    1. 關(guān)閉RDB防止fork進程的內(nèi)存溢出問題
      save ""
      appendonly=yes
    1. 防止某個節(jié)點掛掉,整個cluster掛掉的問題
      cluster-require-full-coverage no
    1. 設(shè)置最大內(nèi)存
      maxmemory
      11453246122
  • 4 日志
    logfile "./redis.log"
  • 5 防止因為磁盤同步,卡掉住進程的情況出現(xiàn)
    no-appendfsync-on-rewrite yes
  • 6 內(nèi)核修改,如果沒開防火墻可以不設(shè)置這個
    net.nf_conntrack_max = 1648576
    1. 這個用來防止內(nèi)存申請不到發(fā)生卡死的情況,很重要
      vm.overcommit_memory = 1
有三種方式修改內(nèi)核參數(shù),但要有root權(quán)限:

編輯/etc/sysctl.conf ,改vm.overcommit_memory = 1,然后sysctl -p 使配置文件生效

sysctl vm.overcommit_memory = 1

echo 1 > /proc/sys/vm/overcommit_memory

建議使用方法1。
    1. 最大連接數(shù)要改一下,redis的warning會要求修改
      net.core.somaxconn = 1024
      編輯/etc/sysctl.conf ,增加 net.core.somaxconn= 1024,然后sysctl -p 使配置文件生效
    1. 設(shè)置內(nèi)存超出策略
      默認沒有設(shè)置
      allkeys-lru BGREWRITEAOF 這個命令可以重寫aof,因為aof長時間增量更新,導致越來越大,但是內(nèi)存可能沒這么大,所以可以用這個命令重寫進行復制備份,恢復等
內(nèi)存吃緊的時候可以嘗試手動去掉內(nèi)存碎片

config set activedefrag yes
memory purge
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容