Выпуск Angie 1.3.0, российского форка Nginx

Опубликован выпуск высокопроизводительного HTTP-сервера и многопротокольного прокси-сервера Angie 1.3.0, ответвлённого от Nginx группой бывших разработчиков проекта, уволившихся из компании F5 Network. Исходные тексты Angie доступны под лицензией BSD.

Сопровождением разработки занимается компания “Веб-сервер”, образованная прошлой осенью и получившая инвестиции в размере 1 млн долларов. Среди совладельцев компании Веб-сервер: Валентин Бартенев (лидер команды, развивавшей продукт Nginx Unit), Иван Полуянов (бывший руководитель фронтэнд-разработчиков Rambler и Mail.Ru), Олег Мамонтов (руководитель команды техподдержки NGINX Inc) и Руслан Ермилов ([email protected]).

Изменения в выпуске Angie 1.3.0:

  • Предоставлена возможность указания более одного шаблона сопоставления URI в одной директиве “location“, что позволяет совмещать несколько обработчиков разных URI в одном блоке “location” без лишнего дублирования повторяющихся конструкций. location =/ ^~/images/ ~*.(gif|jpg|jpeg)$ { #общая конфигурация }
  • Добавлена возможность экспорта статистики и метрик в формате системы мониторинга Prometheus. Для включения экспорта и определения шаблона-обработчика собираемых метрик предложены директивы prometheus и prometheus_template.
  • В интерфейс статистики, настраиваемый директивой “api“, добавлена детальная информация и метрики по группам проксируемых серверов, собранные в контексте модуля “stream” (ранее подобная статистика собиралась только для HTTP).
  • В модуль “stream” в директиву “server”, действующую в блоке “upstream”, добавлен параметр “service“, позволяющий получать списки IP-адресов из DNS-записей SRV, с учётом выставленного приоритета. Ранее данный параметр был доступен только для HTTP.
  • В модуль “stream” в директиву “server”, действующую в блоке “upstream”, добавлен параметр “resolve“, позволяющий отслеживать изменения списка IP-адресов, соответствующего указанному имени домена, и автоматически обновлять его без перезагрузки конфигурации. Ранее данный параметр был доступен только для HTTP.
  • Добавлена поддержка версионирования конфигураций отдельных процессов http-сервера для упрощения отслеживания перезагрузки конфигурации и устранения проблем. Номер версии конфигурации показывается в заголовках процессов и виден при использовании утилиты “ps”.
  • В модуль api добавлена директива api_config_files, включающая возможность отдачи через HTTP API содержимого файлов конфигурации, используемых текущей версией рабочего процесса.
  • При загрузке конфигурации OpenSSL задействовано имя приложения “angie”.
  • Из репозитория проекта nginx перенесены изменения, накопившиеся в ветке nginx 1.25.
Release. Ссылка here.