带有种子的 MongoClient 构造函数



假设我有一个副本集,其中包含一个主P和三个辅助S1S2S3 。假设应用程序使用此构造函数创建 Mongo clent。种子列表是 {PS1S2 }。请注意,该列表不包含S3

假设应用程序使用 secondPreferred,并且S1S2都已关闭。查询会转到P还是S3

javadoc说It will find all members (the master will be used by default),我想查询会转到S3。正确吗?

种子列表就是这样,驱动程序将查询该列表以了解副本集的映射。这意味着它实际上可以使用不在该列表中的成员,即它可以使用 S3

当驱动程序必须通过故障转移或启动来检测副本集中的更改时,它将查询种子列表的一个成员,基本上是一个rs.status(),它将结果本身存储驱动程序认为值得刷新的时间,或者发生强制驱动程序刷新它的事情(即故障转移)。

所以答案是肯定的,它会持续S3.

最新更新