惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

J
Java Code Geeks
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
有赞技术团队
有赞技术团队
博客园 - 【当耐特】
云风的 BLOG
云风的 BLOG
Martin Fowler
Martin Fowler
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
量子位
Engineering at Meta
Engineering at Meta
博客园 - 叶小钗
T
The Blog of Author Tim Ferriss
Recent Announcements
Recent Announcements
罗磊的独立博客
B
Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
U
Unit 42
Microsoft Azure Blog
Microsoft Azure Blog
D
Docker
N
Netflix TechBlog - Medium
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
B
Blog RSS Feed
I
InfoQ
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
V
V2EX

博客园 - xinghebuluo

在云主机上部署OpenClaw并集成微信插件:从零到上手完整指南 mongodb 数据块迁移的源码分析 mongodb 数据块的迁移流程介绍 Guava Cache源码浅析 mongodb在双活(主备)机房的部署方案和切换方案设计 mongodb oplog日志详解和格式分析 Redis之ziplist源码分析 Redis之quicklist源码分析 mongodb中出现_id字段重复记录的排查笔记 Redis LRU源码分析 JAVA中int转string及String.valueOf()的使用 String,StringBuilder和StringBuffer的特点和使用场景 ReentrantLock的原理解析 mongodb的TTL索引介绍(超时索引) JBoss AS7(Application Server 7)的Standalone模式和Domain模式 mongodb 配置均衡器的运行窗口 AFNetworking 遇到错误 Code=-1016 "Request failed: unacceptable content-type: text/plain" 使用cocoa捕获dock栏中的“退出”事件,解决qt开发的应用程序退出异常的问题 【Grails 代理Proxy设置】部署Grails遇到Error Resolve error obtaining dependencies:错误,及解决方法
mongodb添加延时节点
xinghebuluo · 2016-11-03 · via 博客园 - xinghebuluo

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,因此该操作应该在维护时间执行,减少对系统的影响。