Nodejs: структура Expressjs и Restify

Я планировал разработать веб-приложение, которое предоставляет api и веб-сайт, потому что приложение можно использовать с мобильными устройствами.

В настоящее время я использую node-restify для предоставления API, но теперь мне нужен способ обслуживания динамических страниц приложения.

Моя первоначальная идея состояла в том, чтобы использовать только ExpressJS для предоставления страниц и API, но я читал, что node-restify намного быстрее. Теперь моя проблема в том, что с помощью restify я не могу обслуживать html-страницы, отображаемые в ejs.

Есть ли способ иметь только одно приложение и интегрировать экспресс с restify.

Любое предложение?


person piggyback    schedule 09.07.2012    source источник


Ответы (2)


Интересно то, что вы здесь написали, потому что согласно этому тесту (16 марта 2012 г.):

http://blog.perfectapi.com/2012/benchmarking-apis-using-perfectapi-vs-express.js-vs-restify.js/

Restify намного медленнее, чем Express.

Express может легко обрабатывать ~ 1500 запросов в секунду, а Restify — только ~ 250 в секунду.

Но даже если они уже улучшили Restify, я сомневаюсь, что он может быть быстрее, чем Express, который и без того чрезвычайно быстр. Не говоря уже о том, что это целая структура с очень полезными другими инструментами.

Вывод: используйте Express.js.

person freakish    schedule 09.07.2012
comment
Я читал, что они исправили проблемы с производительностью Restify (также отмеченные в приведенной вами ссылке). Теперь он превосходит Express практически во всех случаях. Более того, в разработке находится новая версия, которая обещает быть в 2 раза быстрее, чем текущая версия. Это вполне разумно. Express имеет немного другую цель и поэтому требует/включает в себя больше функций. Каждая функция замедляет работу. - person Pijusn; 26.08.2012
comment
@Pius Да, может быть и правда. С другой стороны, в большинстве случаев узким местом является база данных, поэтому, в конце концов, это не имеет большого значения. - person freakish; 26.08.2012

Проверьте это для API:

https://github.com/rahpal/RestOnNode

RESTful фреймворк на NodeJS

Этот проект построен с использованием той же архитектуры проекта, за которой следует ASP.Net WebApi 2.0. Это означает, что для начала у него будут контроллеры, механизм аутентификации и т. д. Все, что вам нужно сделать, это создать свои собственные контроллеры.

person Rahul Pal    schedule 13.01.2015