Re: Шаблонизатор встроенный в nginx

Валентин Бартенев ne на vbart.ru
Вс Окт 17 20:24:38 MSD 2010


> ммм... нет. Не так выразился, сорри. Пример работы шаблонизатора. А то
> как-то плюсы и практическое применение до меня не доходят.

Типичную логика работы большинства web-сайтов и web-приложений сводится к 
следующим этапам:
1) получить запрос через http-сервер
2) взять нужные данные из базы
3) представить данные в нужном формате, далее либо если:
 а. это AJAJ запрос, то преобразовать их в JSON
 б. обычный запрос, то представить их в формате понятном используемому 
шаблонизатору и выполнить шаблонизацию
4) передать результат http-серверу

В случае использования моего модуля, получаем примерно такую картинку:
1) получить запрос через http-сервер
2) взять нужные данные из базы
3) представить данные в JSON формате
4) передать результат http-серверу

В случае использования CouchDB и моего модуля получаем такую:
1) получить запрос через http-сервер
2) взять нужные данные из базы
3) передать результат http-серверу

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

Кроме того, не все шаблонизаторы работают быстро. Пример медленного 
шаблонизатора - встроенный в Django, тем не менее многие его используют. В то 
время как CTPP2 работает быстрее всех. Если у вас высоконагруженный проект и 
вы не можете кэшировать готовый html из-за динамической природы вашего 
проекта, то для вас это становится уже очень существенно.

--
Валентин Бартенев


Подробная информация о списке рассылки nginx-ru