Выпуск HTTP-акселератора Varnish 5.0
Благодаря применению многопоточности и современных методов мультиплексирования соединений, таких как epoll и kqueue, а также системных вызовов sendfile и madvise, Varnish демонстрирует отличную производительность, например, на обычном оборудовании способен обработать поток в 20 Gbps и обеспечить ускорение отдачи запросов в 300-1000 раз. Кэш хранится в виртуальной памяти. Особенностью Varnish является способность собирать отдаваемые страницы по частям на стороне фронтэнда, определяя логику сборки на языке ESI (Edge Side Includes).
Varnish также предоставляет очень гибкую систему конфигурации, в которой допускается использование вставок на языке Си. Для конфигурации используется специальный язык VCL, который затем компилируется в исполняемый бинарный код. VCL позволяет описать политику обработки запроса: определить обрабатываемый контент, откуда его получить и как преобразовать перед отдачей. Базовая функциональность может расширяться через модули. Присутствуют механизмы балансировки нагрузки, учета состояния и времени реакции бэкенд-серверов.
Основные новшества:
- Возможность перехода из активного VCL на другой VCL через систему меток, что позволяет собирать отдельные VCL-файлы для разных доменов и виртуальных хостов или выносить в отдельные файлы обработчики для определённого вида трафика. Метки также могут применяться для привязки символьного имени к загруженной конфигурации VCL, например, для обслуживающего персонала можно подготовить готовые блоки для штатного режима, работы в выходные и экстренных ситуаций;
- Экспериментальная поддержка протокола HTTP/2. До готовности к промышленному применению код HTTP/2 планируется довести к весне следующего года;
- В основной состав интегрирован переработанный вариант модуля VSLP (StateLess Persistence), который теперь доступен под именем shard director и позволяет организовать работу шардинга по вычисляемому hash-ключу;
- Увеличена эффективность работы Ban Lurker в конфигурациях, включающих десятки тысяч блокировок на основе регулярных выражений.
Источник: http://www.opennet.ru/opennews/art.shtml?num=45172
|
0 | Tweet | Нравится |
|