[英]MongoClient constructor with seeds
假设我有一个副本集,其中包含一个主P
和三个辅助S1
, S2
和S3
。 假设一个应用程序使用这个构造函数创建一个Mongo clent。 种子列表是{ P
, S1
, S2
}。 请注意,该列表不包含S3
。
假设应用程序使用secondPreferred
并且S1
和S2
都关闭。 查询会转到P
还是S3
?
javadoc说It will find all members (the master will be used by default)
,我猜这些查询将转到S3
。 这是正确的吗 ?
种子列表就是这样,驱动程序将查询该列表以了解副本集的映射。 这意味着它实际上可以使用S3
该列表上的成员,即它可以使用S3
。
当驱动程序必须检测副本集中的更改时,无论是通过故障转移还是通过启动,它将查询种子列表的一个成员,基本上是rs.status()
并且它将结果存储在自身中一段时间驱动程序认为值得刷新它,或者发生某种情况迫使驱动程序刷新它(即故障转移)。
所以答案是肯定的,它将用于S3
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.