不论是副本集实例还是集群版实例,底层都是使用多副本的方式存储数据。多个副本组成一个副本集,正常来说包含 1 个 primary 节点,1 个 hidden 节点,1个或者多个 secondary 节点。
Primary 节点承担数据写入请求,secondary 和 hidden 节点通过 oplog 日志更新数据。
默认情况下,用户的读写请求都会发送到 primary 节点处理,此时整体性能受限于 primary 节点的资源。
用户可以通过下面的方法调整配置参数,将读请求发送给 secondary 节点。通过读写分离,可以很大程度上提升系统的性能。