Это менее чем очевидно, но это связано с тем, что движок JS в mongo является однопоточным и поэтому не может использовать все доступные ресурсы ЦП. Даже карта / уменьшение в настоящее время страдает от этого (что странно, поскольку оно было изобретено с учетом параллелизма). Если этот серверный скрипт используется чаще, чем одно ядро может его обработать, он начнет замедлять работу всего сервера. Так что да, во многих случаях две поездки туда и обратно на самом деле быстрее или, по крайней мере, легче масштабировать;) Как и во всем, протестируйте и посмотрите, что работает лучше всего.
ю, что подобные вопросы задавались, но я ищу очень простой ответ на основной вопрос. Я новичок в MongoDB и создаю приложение в стиле твиттера (блоги, подписчики и т. Д.), И мне интересно, какую схему лучше использовать.
Прямо сейчас у меня есть (на очень высоком уровне):
Member {
login: string,
pass: string,
posts: [
{
title: string,
blog: string,
comments: [ { comment: string } ]
}
]
}
Это еще не все, но это дает вам идею.Теперь проблема в том, что я пытаюсь добавить функцию «следовать», и я не уверен, что это лучший путь.
Я мог бы добавить «следующий» встроенный документ в Member, но я просто не уверен, используя mongoDB, каким будет самый умный метод. Моим главным увлечением, очевидно, была бы главная страница «подачи», где вы видите всех людей, на которых вы подписаны.