@mozart1337

Как генерировать динамический html с помощью node js?

Всем привет. Как сгенерировать динамический код с помощью ноды собственно. Есть всякие шаблонизаторы и т.д. и т.п. Попробовал я JADE, но есть проблема, если в браузере при открытой странице зажать F5, то нагрузка ЦП около 20% (core i7 3.5GHz) что оч много, учитывая что это только один клиент. То есть генерация страниц шаблонизатором занимает очень много ресурсов для ноды, как быть без них?
  • Вопрос задан
  • 2030 просмотров
Решения вопроса 1
Taraflex
@Taraflex
Ищу работу. Контакты в профиле.
Если базу вообще убрать, просто компиляция jade занимает много ресурсов

Наверняка не правильно готовите.
Неправильно
//каждый раз делать
var html = jade.render('string of jade', merge(options, locals));

Правильно
//Один раз при запуске приложения
var fn = jade.compile('string of jade', options);

//И дальше везде в коде вызывать
var html = fn(locals);
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
MarcusAurelius
@MarcusAurelius Куратор тега Node.js
автор Impress Application Server для Node.js
Кешировать в оперативке по ключу и отдавать из кеша, ключом брать URL (для общедоступных ресурсов) и URL+UserId (для ресурсов пользователя). Кроме этого, не обращаться к БД при каждом запросе, не обращаться к диску при каждом запросе, писать хороший асинхронный код.
Ответ написан
bingo347
@bingo347 Куратор тега Node.js
Crazy on performance...
Компилируйте шаблоны в js-функции перед запуском проекта, а в проекте используйте уже не в виде шаблонов а в виде кода.
Не знаю как у JADE (по идее должно быть), но у Handlebars точно есть
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы