pou*_*def 7 python mongodb pymongo replicaset
似乎MongoClient和MongoReplicaSetClient都可以连接到mongo副本集.实际上,他们的文档页面几乎相同 - 相同的选项,相同的方法等 - 除了后者的构造函数要求我指定replicaSet.
在这两种情况下,我们都可以指定读取首选项.在这两种情况下,如果发生降级,我们必须处理AutoReconnect异常.
所以我的问题是:
为什么一个人使用一个而不是另一个,因为一个人可以执行完全相同的操作?
两者都可以执行二次读取,对吗?文档说ReplicaSetClient的优点是我们可以进行二次读取,但显然它们都受支持.
该文件说,ReplicaSetClient功能"副本集健康监测." 这到底是什么意思呢?是否有我可以调用的新方法告诉我有关我不能用MongoClient做的replset的健康状况?
在理论上一个MongoReplicaSetClient将连接到复制集的所有成员,而不仅仅是一个.这是错误的:您可能会删除连接字符串中的任何服务器,MongoClient和MongoReplicaSetClient仍然可以连接.我错过了什么吗?
这是一个令人困惑的API选择,我们在PyMongo 2.x中感到遗憾.我们将在2015年4月将所有客户端类合并到PyMongo 3中的MongoClient:
http://emptysqua.re/blog/good-idea-at-the-time-pymongo-mongoreplicasetclient/
与此同时: