Организация Apache Software Foundation представила релиз высокопроизводительного http-сервера Apache Traffic Server 3.2, который может выступать в роли промежуточного звена, перенаправляющего запросы к фронтэндам, генерирующим динамический контент, или обеспечить отдачу статических объектов, таких как файлы, JavaScript, CSS и картинки. Сервер также включает в себя набор сервисов для работы в качестве распределенной облачной-системы: средства конфигурирования, управления сессиями, балансировки, авторизации и маршрутизации запросов.
Изначально продукт был создан в недрах компании Yahoo, но в 2009 году переведен в разряд открытых проектов и отдан под опеку фонда Apache. Traffic Server позволяет организовать работу системы динамической обработки HTTP-запросов, которая использовалась в Yahoo последние 10 лет и до сих пор задействована для ежедневной доставки конечным пользователям около 400 терабайт контента. Ежедневно Traffic Server обслуживает отдачу пользователям Yahoo примерно 30 миллиардов объектов. При тестировании производительности Traffic Server смог обеспечить отдачу более 200 тысяч небольших объектов в секунду при задействовании кэширования в ОЗУ или 100 тыс. объектов в секунду без использования кэширования.
Основные особенности Apache Traffic Server:
- Кэширование: уменьшение времени ответа, снижение нагрузки на сервер и сокращение внутреннего трафика за счет повторного использования и кэширования отдачи часто запрашиваемых web-страниц, изображений и обращений к web-сервисам;
- Работа в качестве прокси: поддержка keep-alive, фильтрации и анонимизации запросов контента, использование в качестве балансировщика нагрузки;
- Скорость: высокая степень масштабируемости на современных многоядерных системах, способность обрабатывать на обычном оборудовании десятков тысяч запросов в секунду;
- Расширяемость: доступен API для разработки расширяющих функциональность плагинов, способных решать различные задачи, такие как изменение HTTP-заголовков и содержимого отдаваемого контента или создание обработчиков c реализацией поддержки новых протоколов;
- Надежность: система проверена в промышленной эксплуатации и используется для отдачи сотен терабайт трафика.
Новшества, добавленные в Apache Traffic Server 3.2:
- Полная поддержка IPv6, в том числе во всех API для плагинов (в прошлой версии IPv6 поддерживался только на стороне клиента);
- Поддержка SSL/TLS-расширений SNI (Server Name Indication) и NPN (Next Protocol Negotiation). Проведена работа по увеличению стабильности функционирования SSL;
- Новые гибкие возможности настройки для управления IP-адресами и сетевыми портами, обслуживающими входящие запросы и исходящие ответы. Отныне можно привязывать Apache Traffic Server к любым комбинациям адресов и портов для HTTP и HTTPS;
- Существенно увеличена скорость отдачи отдельных кусков больших объектов из кэша с использованием заголовка Range;
- Расширение API для разработки плагинов;
- Увеличение масштабируемости и производительности кластерного кэша (Cluster Cache);
- Значительное улучшение производительности при проксировании бэкенда, поддерживающего Keep-Alive соединения. Существенно увеличена общая производительность кэша;
- Расширение числа входящих в базовую поставку плагинов;
- Поддержка всех версий GCC начиная с 4.1.2, а также Clang/LLVM 3 и компилятора Intel C/C++ Compiler (ICC).