Mongodb中的“中学”与“奴隶”

时间:2014-10-30 19:34:08

标签: node.js mongodb

我想澄清mongodb中"Secondary""Slave"之间的术语差异(如果有的话)。

混淆源于连接Db constructor的node-mongodb-native文档:

db_opts = {db: {
   readPreference: ReadPreference.SECONDARY
   slaveOk: true 
}}

MongoClient.connect('mongodb://example', db_opts, ...)

readPreference选项和slaveOk选项之间有什么区别?

1 个答案:

答案 0 :(得分:3)

不要在这里遇到中学与奴隶。你真正要问的是slaveOk vs readPreference。

slaveOk基本上已被弃用,转而使用readPreferenceMongoClient docs明确声明为slaveOk:“遗留选项允许从辅助读取,而是使用readPrefrence”。他们还声明设置readPreference会覆盖任何slaveOk值。