30、MongoDB 复制:驱动程序与复制策略详解

MongoDB复制策略与驱动详解

MongoDB 复制:驱动程序与复制策略详解

在使用 MongoDB 复制构建应用程序时,有几个特定于应用程序的主题需要了解,包括连接和故障转移、写入关注、读取扩展以及标签设置。下面将详细介绍这些内容。

1. 连接和故障转移

MongoDB 驱动程序为连接到副本集提供了相对统一的接口,连接方式主要分为单节点连接和副本集连接。

1.1 单节点连接

可以选择连接到副本集中的单个节点。连接到指定为副本集主节点的节点,与连接到独立节点没有区别。驱动程序会发起 TCP 套接字连接,然后运行 isMaster 命令。对于独立节点,该命令返回的文档示例如下:

{
  "ismaster": true,
  "maxBsonObjectSize": 16777216,
  "maxMessageSizeBytes": 48000000,
  "localTime": ISODate("2013-11-12T05:22:54.317Z"),
  "ok": 1
}

对驱动程序来说,最重要的是 isMaster 字段设置为 true ,这表明该节点是独立节点、运行主从复制的主节点或副本集主节点,在这些情况下,节点可进行写入操作,驱动程序用户可以执行任何 CRUD 操作。

但直接连接到副本集从节点时,至少对于大多数驱动程序,必须表明知道正在连接到这样的节点。以 Ruby 驱动程序为例,可使用 :read 参数实现,代码如下:

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值