Pull to refresh

Релиз Nginx CT++ Module 0.5 — высокопроизводительного модуля-шаблонизатора для веб-сервера

Reading time 2 min
Views 3.3K
Первоначально хотел оформить как топик-ссылку, но тогда не получилось бы вставить картинку:

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

Позднее, как появится свободное время, напишу более подробную пошаговый HowTo, что вообще можно и что нужно делать с модулем, как можно представить MVC в виде: M — ваши сервисы, V — этот модуль и C — Nginx.

В списках рассылки Nginx первая версия модуля за номером 0.1 была представлена еще в сентябре прошлого года. И была скорее ранней alpha, чем beta. Тем не менее с тех пор, судя по письмам и сообщениям на баг-трекере многие всерьез заинтересовались модулем, начали его активно пробовать даже на такой ранней стадии, брали ревизии из транка svn.

С тех пор была проделана большая работа, выпуск новых версий постоянно откладывался. Выпускать еще одну сырую версию мне не хотелось. И вот, настал тот момент, сразу за 0.1 представляю вниманию хабравчан 0.5, потому что в ~5 раз лучше, и сайт с информацией и документацией: Nginx CT++ Module. О том, что такое CT++ вы можете прочитать на сайте проекта.

Архитектура CT++:


Что уже запланировано сделать в будущих версиях модуля:
  • Возможность кэшировать в разделяемой памяти шаблоны, установленные в nginx.conf (при старте Nginx байткод указанных шаблонов будет загружен в хэш-таблицу в разделяемой памяти, не трудно догадаться как это скажется на производительности);
  • Поддержка Nginx переменных в директивах templates_root и template (путь до шаблона станет возможным задавать динамически не только через заголовок, но и в конфигурации сервера);
  • Поддержка подзапросов для получения шаблонов (байткод шаблонов можно будет брать, к примеру, из memcached).

Пока у меня всё, всем удачного дня!

p. s. если кому любопытно взлянуть на посетителей с хабра, Яндекс.Метрика для сайта модуля открыта: http://metrika.yandex.ru/stat/?id=6966103

Update: А вот, что нас ждет в следующей версии CT++ 2.7:
habrahabr.ru/blogs/nginx/119582/#comment_3911311
если будут изменения в API VM или JSON-парсера, постараюсь своевременно обеспечить поддержку новой версии в модуле.
Tags:
Hubs:
+57
Comments 72
Comments Comments 72

Articles