Выпуск nginx 1.19.5 сервера приложений Unit 1.21.0

Kate

Administrator
Команда форума
Сформирован выпуск основной ветки nginx 1.19.5, в рамках которой продолжается развитие новых возможностей (в параллельно поддерживаемой стабильной ветке 1.18 вносятся только изменения, связанные с устранением серьёзных ошибок и уязвимостей).
Основные изменения:
  • Добавлена новая опция командной строки "-e", позволяющая указать альтернативный файл для записи лога ошибок, который будет использоваться вместо лога, заданного в настройках. Вместо имени файла можно указать специальное значение stderr.
  • При сборке разных модулей-дополнений теперь можно использовать общие исходные файлы.
  • Исправлены ошибки, связанные с работой фильтров тела сообщений, закрытием соединений SSL и возникновением ошибки "upstream sent frame for closed stream" при работе с бэкендами gRPC.
Дополнительно можно отметить релиз сервера приложений NGINX Unit 1.21, предлагающего решение для обеспечения запуска web-приложений на различных языках программирования (Python, PHP, Perl, Ruby, Go, JavaScript/Node.js и Java). Под управлением NGINX Unit может одновременно выполняться несколько приложений на разных языках программирования, параметры запуска которых можно изменять динамически без необходимости правки файлов конфигурации и перезапуска. Код написан на языке Си и распространяется под лицензией Apache 2.0. С особенностями NGINX Unit можно познакомиться в анонсе первого выпуска.
В новом выпуске NGINX Unit предоставлена возможность использования регулярных выражений (PCRE) при определении маршрутов и фильтрации запросов. Например:
"match": {
"uri": "~\\.jpe?g$"
},

Другим значительным улучшением стала поддержка многопоточной обработки запросов в процессах приложений. Для каждого процесса приложениях теперь можно определить число потоков, используемых при обработке запросов, что позволяет экономить память по сравнению с ответвлением отдельных процессов. Многопочные обработчики реализованы для Java, Python, Perl и Ruby. При использовании ASGI каждый поток в каждом процессе приложения выполняется асинхронно. Настройка числа потоков осуществляется при помощи нового параметра "threads".
В модуле для Python обеспечена совместимость с Python 3.9 и добавлена поддержка старых приложений, использующих интерфейс ASGI 2.0. Для выбора между ASGI и WSGI предложен параметр "protocol".

Источник статьи: https://www.opennet.ru/opennews/art.shtml?num=54148
 
Сверху