【问题标题】:How much of mongo shell command's javascript part executed is on server?服务器上执行了多少 mongo shell 命令的 javascript 部分?
【发布时间】:2018-09-22 07:14:29
【问题描述】:

mongo shell 命令中的所有 javascript 部分是在服务器上还是在客户端上执行,还是部分执行?

假设我有一个命令

db.mycollection.find({timestamp:{$lt:new Date()}}).forEach(function(doc){
    db.mycollection.remove(doc);
})
  1. new Date() 是在客户端还是服务器上执行?
  2. forEach 部分是在客户端还是在服务器上执行的?

【问题讨论】:

  • 这是一个完全有效的问题,我不明白反对意见:(

标签: mongodb mongo-shell


【解决方案1】:

如果你尝试在 mongo shell 中执行上述代码并在 2 级服务器上启用 mongodb profiler,它只记录以下操作:

  • db.mycollection.find({timestamp:{$lt:new Date()}})
  • db.mycollection.remove(doc)

mongo shell 是 MongoDB 的交互式 JavaScript 接口。

  • new Date() 是在客户端还是服务器上执行? - 在客户端
  • forEach 部分是在客户端还是在服务器上执行的? - 在客户端

如果客户端处理大数据,你可以注意到mongo进程的CPU使用率。

你也可以在SO查看这个问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-11-01
    • 2020-02-15
    • 2018-11-15
    • 1970-01-01
    • 2014-10-04
    • 1970-01-01
    • 2012-05-24
    相关资源
    最近更新 更多