千家信息网

【MongoDB】ReadPreference读偏好

发表于:2025-01-21 作者:千家信息网编辑
千家信息网最后更新 2025年01月21日,在副本集Replica Set中才涉及到ReadPreference的设置,默认情况下,读写都是分发都Primary节点执行,但是对于写少读多的情况,我们希望进行读写分离来分摊压力,所以希望使用Sec
千家信息网最后更新 2025年01月21日【MongoDB】ReadPreference读偏好

在副本集Replica Set中才涉及到ReadPreference的设置,默认情况下,读写都是分发都Primary节点执行,但是对于写少读多的情况,我们希望进行读写分离来分摊压力,所以希望使用Secondary节点来进行读取,Primary只承担写的责任(实际上写只能分发到Primary节点,不可修改)。


MongoDB有5种ReadPreference模式:

  • primary

主节点,默认模式,读操作只在主节点,如果主节点不可用,报错或者抛出异常。

  • primaryPreferred

首选主节点,大多情况下读操作在主节点,如果主节点不可用,如故障转移,读操作在从节点。

  • secondary

从节点,读操作只在从节点, 如果从节点不可用,报错或者抛出异常。

  • secondaryPreferred

首选从节点,大多情况下读操作在从节点,特殊情况(如单主节点架构)读操作在主节点。

  • nearest

最邻近节点,读操作在最邻近的成员,可能是主节点或者从节点。


Spring中的设置ReadPreference:

            


0