javascript - Mongo : Is it a good practice to do collection. find() 返回主节点上的所有项目

标签 javascript python mongodb

我有一个后台进程,从 MongoDB 收集所有用户,并对他们的帐户进行某些检查和处理;这种情况每天都会在午夜发生。我的问题是:

  1. 这样做是否是一个好的做法(就性能而言):

    db.users.find()
    

    检索所有用户,否则这可能会减慢数据库速度,建议 遵循其他一些做法吗?

  2. 在主节点上执行此操作安全吗?

PS 这种情况每天都会发生在接近 10 万用户的用户身上

最佳答案

MongoDb不是单线程数据库,你的操作是在线程中运行的。

需要注意的是设置查找操作的超时时间。

例如。

db.users.find(timeout=false)

否则,一段时间后你会得到过期游标异常

还有一种方法可以避免长时间光标,每次查询一个文档,然后通过

查询下一个文档
db.users.findOne({_id: {$gt: old_id}})

关于javascript - Mongo : Is it a good practice to do collection. find() 返回主节点上的所有项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33648999/

相关文章:

python - 'tf.data()' throwing 你的输入数据用完了;中断训练

javascript - 从 div 标签中选择元素

python - 如何避免将 _pb2.py 文件放在包根目录下?

javascript - 如何使用 jQuery 将 html 文本框中的单词转换为 "tag"?

python - 如何在 Python (2.7 +) 中等待 ENTER 键按下?

javascript - Nodejs 变量声明

java - Mongodb 获取唯一值的计数

javascript - BackboneJS 模型方法 'get' 不考虑 idAttribute 设置

javascript - 如何在 javascript 中删除 ":"之前的字符串的一部分?

javascript - Magnific Popup 的 Typescript 定义文件