Сколько выполненной части javascript команды оболочки mongo находится на сервере? - PullRequest
0 голосов
/ 22 сентября 2018

Все ли части javascript в командах оболочки mongo выполняются на сервере или на клиенте или частично?

Допустим, у меня есть команда

db.mycollection.find({timestamp:{$lt:new Date()}}).forEach(function(doc){
    db.mycollection.remove(doc);
})
  1. new Date() выполняется на клиенте или на сервере?
  2. Часть forEach выполняется на клиенте или на сервере?

1 Ответ

0 голосов
/ 22 сентября 2018

Если вы попытаетесь выполнить приведенный выше код в оболочке mongo и включите mongodb profiler на сервере на уровне 2, он записывает только следующие операции:

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

Оболочка mongo представляет собой интерактивный интерфейс JavaScript для MongoDB.

  • Выполняется ли новая Дата () на клиенте или на сервере?- На клиенте
  • Выполняется ли часть forEach на клиенте или на сервере?- На клиенте

Вы можете заметить использование ЦП процессом mongo на клиенте, если он обрабатывает большие данные.

Этот вопрос также можно проверить на SO .

...