2015-09-01 2 views
2

Я создаю приложение шаблона в koajs для последующего использования. Я не могу решить, должен ли я использовать ODM или нет. Я могу определить свои схемы с использованием классов ES6, и даже если я использую что-то вроде mongoose, я, вероятно, в конечном итоге напишу много настраиваемых валидаторов, чтобы они не были решающими факторами. Двигатели Odm содержат множество функций, которые я вряд ли когда-либо буду использовать.MongoDB/RethinkDB Использовать ODM или нет?

  • Есть ли другие преимущества использования odm над написанием пользовательских методов?
  • Насколько накладные расходы вызваны двигателем odm, стоит ли его не использовать?
  • Как бы вы сравнили два варианта с точки зрения производительности, скажете ли вы, что плохо оптимизированные запросы будут хуже работать?

ответ

0

Вопросы, которые вы задаете, требуют гораздо больше фона в вашей среде, стеке и функциональности приложения. Всякий раз, когда вы анализируете результаты и генерируете из них удобные объекты, вы тратите время на процессор, делая это, плюс вы будете создавать дополнительные объекты памяти, генерирующие объекты, или просто обрабатывать результаты необработанных запросов.

Основываясь на моем понимании ODM, преимущество использования одного из них - удобство при написании логики приложения, а также удобство чтения кода. Этот фактор не следует воспринимать легко для крупных проектов и может помочь вам организовать и внедрить новые функции быстрее, чем без него.

Если вы беспокоитесь о производительности, вы всегда можете проверить? Но я не думаю, что ODM собирается сделать или сломать вашу систему, если вы ее используете.

Смежные вопросы