MongoReplicaSetClient,我应该连接到哪个uri?
MongoReplicaSetClient,which uri should I connect to?
假设我有一个包含 3 台机器(M1、M2、M3)和其他几台用于托管服务器的机器(S1、S2、..Sn)的副本。我不太关心实时性,所以 ReadPreference
将设置为 NEAREST
。
有一件事困扰着我:正如文档所说,MongoReplicaSetClient
唯一需要的参数是 hosts_or_uri
。但是我应该使用哪个 mongodb uri?由于我将使用 NEAREST
选项,如果我:
会有什么不同吗?
- 将
hosts_or_uri = M1
从 S1 设置为 Sn;
- 传播连接,1/3
hosts_or_uri = M1
,1/3hosts_or_uri = M3
,1/3hosts_or_uri = M3
;
- 使用
hosts_or_uri = M1, M2, M3
我有区别,哪个更好?谢谢!
在 URI 中指定多个成员。指定一个足以创建到所有集合成员的副本集连接;但是,如果您在 uri 中仅指定一台机器,而该机器未启动,则连接将失败。如果您指定多台并且一台机器宕机(但副本集是健康的),连接仍然会成功。
假设我有一个包含 3 台机器(M1、M2、M3)和其他几台用于托管服务器的机器(S1、S2、..Sn)的副本。我不太关心实时性,所以 ReadPreference
将设置为 NEAREST
。
有一件事困扰着我:正如文档所说,MongoReplicaSetClient
唯一需要的参数是 hosts_or_uri
。但是我应该使用哪个 mongodb uri?由于我将使用 NEAREST
选项,如果我:
- 将
hosts_or_uri = M1
从 S1 设置为 Sn; - 传播连接,1/3
hosts_or_uri = M1
,1/3hosts_or_uri = M3
,1/3hosts_or_uri = M3
; - 使用
hosts_or_uri = M1, M2, M3
我有区别,哪个更好?谢谢!
在 URI 中指定多个成员。指定一个足以创建到所有集合成员的副本集连接;但是,如果您在 uri 中仅指定一台机器,而该机器未启动,则连接将失败。如果您指定多台并且一台机器宕机(但副本集是健康的),连接仍然会成功。