zoukankan      html  css  js  c++  java
  • redis主从同步收到以下参数影响

     
    repl-ping-slave-period主从心跳ping的时间间隔。默认10
    repl-timeout  从节点超时时间。默认60
    repl-backlog-size  主节点保存操作日志的大小。默认1M 
    repl-backlog-ttl   主节点保存操作日志的时间。默认3600秒
    client-output-buffer-limit 这个参数分为3部分,第二部分涉及slave。表示主节点输出给从节点的缓存(output-buffer)大小。默认是:256M 64M 60秒。意思是:如果output-buffer>256M则从节点需要重新全同步,如果256>output-buffer>64且持续时间60秒,则从节点需要重新全同步。
     
    主从同步的健康监控项(info Replication ):
    主节点:
    master_repl_offset 主节点backlog偏移量
    slave0: offset   从节点backlog偏移量
    master_repl_offset-offset  master_repl_offset与offset的差量为延迟backlog
    从节点:
    master_last_io_seconds_ago  从节点超时时间
     
    从网络断开到恢复后。slave redis 重新链接上主库。判断是否需要做全同步,或者是增量恢复的流程图如下:
     
    1. repl-timeout  从节点超时时间。超时了会怎样?
    超时了,从节点会直接重新同步一份主节点的完整数据。没有超时,则根据其他参数还可能同步增量数据而已。
    2. client-output-buffer-limit 这个参数分为3部分,第二部分涉及slave。表示主节点输出给从节点的缓存(output-buffer)大小。缓冲区里放的是什么?
    这个参数针对有从库的主节点,output-buffer缓冲区里放的是主库待同步给从库的操作数据。
    3. repl-backlog-size  主节点保存操作日志的大小。这个和client-output-buffer-limit有什么关联关系吗?
    针对有从库的主节点,repl-backlog-size 设置主节点缓存操作数据的可用大小。如果网络阻塞,主节点操作数据未同步给从节点而积累在缓冲区,这个缓冲区大小超过repl-backlog-size 。网路恢复之后,slave节点就必须重新从主节点同步一份完整数据。
    client-output-buffer-limit 和 repl-backlog-size没有什么紧密关联。
     
     
    redis 4.0 从节点需要停止一段时间的时候,可以设置 repl-backlog-ttl  为0 。不释放backlog的内容,这样启动slave的时候 可以部分同步。当然与repl-backlog-size  client-output-buffer-limit  的大小也有关
  • 相关阅读:
    IIS配置Asp.net时,出现“未能加载文件或程序集“System.Web.Extensions.Design, Version=1.0.61025.0”
    如何ping测有端口的网站
    职场情况--小领导人品不好,大领导很欣赏我,该不该将小领导的搓事告诉大领导?
    https://www.cnblogs.com/netoxi/p/7258895.html
    java基本数据类型
    不用犹豫什么时候声明实例变量或者拒不变量
    java多线程
    架构考虑
    多线程一共就俩问题:1.线程安全(访问共享数据) 2.线程通信(wait(),notify())
    csrf攻击
  • 原文地址:https://www.cnblogs.com/vansky/p/9293980.html
Copyright © 2011-2022 走看看