Открыть сервис

Apache Traffic Server

Apache Traffic Server (ATS) — это высокопроизводительный прокси-сервер с открытым исходным кодом, разработанный для кэширования, балансировки нагрузки и ускорения доставки веб-контента. Он относится к классу обратных и прямых прокси-серверов, способен обрабатывать миллионы одновременных соединений и используется в крупных интернет-инфраструктурах, включая системы доставки контента (CDN) и облачные платформы.

История

Проект Apache Traffic Server был изначально создан компанией Inktomi в конце 1990-х годов как коммерческий продукт под названием Traffic Server. В 2001 году компания Inktomi была приобретена корпорацией Yahoo!, которая использовала Traffic Server в своей внутренней инфраструктуре. В 2009 году Yahoo! передала исходный код проекта в инкубатор Apache Software Foundation, где он был принят как проект верхнего уровня в 2010 году. С тех пор ATS развивается сообществом разработчиков под эгидой Apache Software Foundation.

Первая стабильная версия ATS (1.0.0) была выпущена в 2012 году. С тех пор проект прошёл несколько крупных обновлений, добавив поддержку HTTP/2, TLS 1.3, улучшенную производительность и расширенные возможности плагинов.

Архитектура и принцип работы

Apache Traffic Server построен на событийно-ориентированной архитектуре (event-driven), что позволяет ему эффективно обрабатывать большое количество одновременных соединений без значительного потребления ресурсов. Основные компоненты ATS:

Ядро (Core)

Кэширование

ATS использует многоуровневую систему кэширования:

Кэширование может быть настроено на уровне отдельных URL, доменов или типов контента. ATS поддерживает инвалидацию кэша по времени жизни (TTL) и по запросу.

Балансировка нагрузки

ATS может выступать в роли обратного прокси, распределяя входящие запросы между несколькими серверами-источниками (origin servers). Поддерживаются алгоритмы:

Плагины

Система плагинов ATS позволяет расширять функциональность без изменения ядра. Плагины могут быть написаны на C, C++ или Lua. Примеры популярных плагинов:

Конфигурация и управление

Apache Traffic Server настраивается через текстовые конфигурационные файлы. Основные файлы конфигурации:

Управление сервером осуществляется через утилиты командной строки:

Производительность и масштабирование

Apache Traffic Server известен своей высокой производительностью. По данным тестов, проведённых сообществом, ATS способен обрабатывать более 1 миллиона запросов в секунду на одном сервере с современным оборудованием. Ключевые факторы производительности:

Для масштабирования ATS может быть развёрнут в кластерной конфигурации, где несколько экземпляров сервера работают под единым управлением. Поддерживается репликация кэша между узлами.

Применение

Apache Traffic Server используется в следующих сценариях:

Системы доставки контента (CDN)

ATS является основой многих коммерческих и открытых CDN, таких как Apache Traffic Server CDN, а также используется в инфраструктурах крупных интернет-компаний. Например, Yahoo!, ChinaCache и другие провайдеры CDN применяют ATS для кэширования и ускорения доставки контента.

Обратный прокси

ATS может выступать в роли обратного прокси для веб-серверов, обеспечивая кэширование, балансировку нагрузки и защиту от DDoS-атак. Он часто используется вместе с Apache HTTP Server, Nginx или веб-серверами на базе Python и Ruby.

Прямой прокси

В корпоративных сетях ATS может использоваться как прямой прокси-сервер для кэширования веб-контента, ускорения доступа сотрудников к интернет-ресурсам и фильтрации трафика.

Ускорение API

ATS может кэшировать ответы REST API, снижая нагрузку на серверы приложений и уменьшая задержки для клиентов.

Сравнение с альтернативами

Apache Traffic Server конкурирует с другими прокси-серверами, такими как Squid, Varnish, Nginx и HAProxy. Основные отличия:

Развитие и сообщество

Apache Traffic Server развивается под управлением Apache Software Foundation. Исходный код доступен на GitHub под лицензией Apache 2.0. Сообщество разработчиков проводит регулярные релизы, добавляя новые функции и исправляя ошибки. Проект поддерживает официальную документацию, включая руководство по установке, настройке и разработке плагинов.

Основные направления развития ATS включают:

Интересные факты

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →