zoukankan      html  css  js  c++  java
  • mongodb添加延时节点

    1.      简介

       延时节点是主节点过去某个时间点的“数据快照”,通常用来做数据备份,如果主节点有误操作而删除了数据,可以通过延时节点来恢复数据。例如,当前时间是10:00,并且延时节点设置1个小时的延时同步,那么该节点不会同步1个小时内主节点上的操作。

    2.      基本要求

    2.1.        优先级

    优先级必须设置为0,防止延时节点被选为主节点。

    2.2.        隐藏节点

    应该把延时节点设置为隐藏节点,这样客户端在做从服务器读操作时,请求不会被分发到延时节点。

    2.3.        可以选举投票

    在发生选举时,该节点可以投票。

    2.4.        延时时长

    延时节点通过延时从opLog同步数据来实现,因此延时时长的设置需要考虑两个因素:

    1. 不小于维护时间窗口
    2. 比opLog的容量要小一些,不然会不能同步而进入stale状态

    3.      延时节点设置

    下面举一个例子来说明如果设置延时节点。假定目前有一个包含5个节点的复制组:1个主节点、3个普通从节点、1个延时节点。延时节点的延时时长设置为3600s,并且它是一个优先级为0的隐藏节点,如下图所示:

     

    连接到复制组的主节点,然后配置:

    >cfg = rs.conf()

    cfg.members[1].priority = 0

    cfg.members[1].hidden = true

    cfg.members[1].slaveDelay = 3600

    >rs.reconfig(cfg)

    4.      注意事项

    rs.reconfig()命令执行后,会强制当前的主节点下线,然后进行新的主节点选择。主节点下线时,会关闭所有客户端的连接,这个过程会持续10-20s,因此该操作应该在维护时间执行,减少对系统的影响。

  • 相关阅读:
    手机号码正则表达式
    POJ 3233 Matrix Power Series 矩阵快速幂
    UVA 11468
    UVA 1449
    HDU 2896 病毒侵袭 AC自动机
    HDU 3065 病毒侵袭持续中 AC自动机
    HDU 2222 Keywords Search AC自动机
    POJ 3461 Oulipo KMP模板题
    POJ 1226 Substrings KMP
    UVA 1455 Kingdom 线段树+并查集
  • 原文地址:https://www.cnblogs.com/xinghebuluo/p/6025610.html
Copyright © 2011-2022 走看看