redis clusterが実際に直面する問題


L331.forkの消費時間による高同時要求遅延:info statsパラメータlast_fork_usec最近のfork時間最適化:forkの消費時間はredisメインプロセスのメモリと関係があり、一般的にredis内に10 G以内が存在することを制御する.AOFブロック問題fsyncが2秒を超えると、書き込み要求がブロックされ、主からoffset偏差が大きすぎることによるデータ損失の最適化を防止する:ハードディスクの書き込み速度を最適化する.主にレプリケーション遅延問題info replicationからmasterのoffsetとslaveのoffsetを問い合わせる.しかし、slaveがmasterより大きい場合もあり、この場合、スクリプトによる監視警報が必要である.プライマリスレーブレプリケーション嵐複数のslaveマウントmasterが同時に全量レプリケーションを行うと、大量の帯域幅が最適化されます.ツリーマウント5を使用します.Linuxカーネルの最適化はredis 1)vmを高める.overcommit_memory 0:十分なメモリがあるかどうかをチェックします.ないと申請メモリに失敗します1:メモリの使用を許可します2:メモリアドレス空間がswap+50%を超えてはいけません.0であればforkのような操作が失敗し、申請が十分なメモリ空間cat/proc/sys/vm/overcommit_memoryecho "vm.overcommit_memory=1">>/etc/sysctl.confsysctl vm.overcommit_memory=1
 2) swapiness
    cat /proc/version,  linux    
          linux    <3.5,  swapiness   0,      swap   oom killer(    )
          linux    >=3.5,  swapiness   1,      swap   oom killer
        echo 0 > /proc/sys/vm/swappiness
  echo vm.swapiness=0 >> /etc/sysctl.conf

 3)         
      ulimit -n 10032 10032

 4) tcp backlog
     cat /proc/sys/net/core/somaxconn
         echo 511 > /proc/sys/net/core/somaxconn