nginx 1.4.0

LinuxDoc.Ru,
После года разработки и 16 экспериментальных выпусков в тестовой ветке 1.3.x представлена новая стабильная версия высокопроизводительного HTTP-сервера nginx 1.4.0. В дальнейшем все изменения в новой стабильной ветке будут связаны с устранением ошибок и внесением незначительных улучшений, не нарушающих API. Все существенные изменения будут развиваться в рамках новой экспериментальной ветки 1.5.x.

В соответствии с апрельским отчетом компании Netcraft nginx используется на 12.91% всех активных сайтов, что соответствует второму месту по популярности в данной категории (доля Apache соответствует 51.01%, а Microsoft IIS - 12.13%). Доля nginx среди всех сайтов составляет 14.81%, среди миллиона самых посещаемых сайтов в мире - 12.96%, среди 10 тысяч наиболее крупных ресурсов - 30%, среди сайтов, работающих на платформе Amazon AWS, - 44%. В настоящее время под управлением nginx работает около 96.1 млн сайтов, что на 26.3 млн больше чем год назад. По данным W3Techs 16.1% из миллиона самых посещаемых сайтов в мире используют nginx, в апреле прошлого года этот показатель составлял 11%. В России nginx используется на 66.3% самых посещаемых сайтов (год назад - 58.2%).

Из улучшений, добавленных в процессе формирования экспериментальной ветки 1.3.x, можно отметить:

Интеграция модуля ngx_http_spdy_module с реализацией протокола SPDY, который продвигается для включения в состав будущего стандарта HTTP/2.0. SPDY был создан специально для минимизации задержек при соединении и обмене данными между клиентом и сервером. По данным Google ускорение загрузки страниц при использовании SPDY составляет от 15% до 50%. SPDY добавляет сеансовый уровень поверх SSL, что даёт возможность обеспечить передачу нескольких одновременных потоков в рамках одного TCP-соединения. При использовании HTTP запросы в рамках одного потока обслуживаются последовательно, задействование SPDY даёт возможность мультиплексировать запросы ресурсов, обрабатывать их параллельно и отправлять запросы с учетом динамически рассчитываемых приоритетов, увеличивая текущую пропускную способность. Использование SSL одновременно позволяет решить проблему с прохождением запросов через прокси серверы и позволяет организовать доставку данных по инициативе сервера, без специального запроса клиента (технология Server push). Дополнительное ускорение достигается за счёт сжатия HTTP-заголовков запроса и ответа, что уменьшает размер передаваемых данных и заметно ускоряет загрузку страниц, порождающих большое число мелких запросов (CSS, javascript файлы, картинки), особенно при использовании медленных каналов связи.

Поддержка работы в роли прокси для соединений WebSocket. Поддержка WebSocket-соединений в модулях ngx_http_uwsgi_module и ngx_http_scgi_module. Протокол WebSocket разработан для решения проблемы с организацией двустороннего надёжного обмена данными между web-приложением и сервером. По своей сути WebSockets является своеобразным аналогом TCP для Web и позволяет в произвольном порядке инициировать отправку данных от сервера к web-приложению, а не только от web-приложения к серверу. Сам протокол не использует "сырые" TCP-соединения или множественные HTTP-запросы, вместо этого постоянное соединение поддерживается в рамках единого с HTTP канала передачи данных, по которому не передаётся лишних HTTP-заголовков. Установив WebSocket-соединение между сервером и клиентом, разработчик может отправить данные из web-браузера при помощи метода send() и получить отправленные со стороны сервера данные через установку специального обработчика событий;

Новый модуль ngx_http_gunzip_module с реализацией фильтра, позволяющего распаковывать на стороне nginx ответы серверов, сжатые методом gzip, если клиент не поддерживает gzip-сжатие. Таким образом появляется возможность хранить все прокэшированные ответы в сжатом виде, что достаточно сильно экономит дисковое пространство;

В модуле ngx_http_ssl_module появилась поддержка механизма OCSP stapling, позволяющего выполнять проверку статуса TLS/SSL-сертификатов на OCSP-серверах и оперативно реагировать на факты отзыва сертификатов;

Новые директивы: limit_req_status, limit_conn_status, image_filter_interlace, real_ip_recursive, geoip_proxy и geoip_proxy_recursive;
Добавлена поддержка переменных в директивах proxy_bind, fastcgi_bind, memcached_bind, scgi_bind и uwsgi_bind;
В почтовом прокси-сервере добавлена поддержка IPv6-бэкендов;
Переменные $status, $pipe, $request_length, $time_iso8601, $request_time,$bytes_sent, $connection, $connection_requests, $msec и
$time_local теперь можно использовать не только в директиве
log_format;
В модуль ngx_http_geoip_module добавлена поддержка IPv6. Директива geo теперь поддерживает IPv6 адреса в формате CIDR;
При использовании директивы include с маской на
Unix-системах включаемые файлы теперь сортируются в алфавитном порядке;
Директивы proxy_pass, fastcgi_pass, scgi_pass, uwsgi_pass
и директива server в блоке upstream теперь поддерживают IPv6-адреса. В директиве resolver теперь можно указывать порт и
задавать IPv6-адреса DNS-серверов;
В директиву worker_processes добавлен параметр auto, позволяющий автоматически выбирать число одновременных процессов-обработчиков, в зависимости от числа процессоров в системе;
Поддержка компилятора Clang;
Добавлена поддержка директивы least_conn в блоке upstream, которая задаёт для группы метод балансировки нагрузки, при котором запрос передаётся серверу с наименьшим числом активных соединений, с учётом весов серверов. При использовании директивы ip_hash теперь можно задавать веса серверов.
linux

Программы для Linux

. nginx 1.4.0 nginx 1.4.0
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Если Вы обнаружите в опубликованных документах ошибки, опечатки, несоответствия и неточности - сообщите о них.
>>> Состоялся экспериментальный выпуск открытой реализации Win32 API - Wine 3.12. С момента выпуска версии 3.11 было закрыто 40 отчётов об ошибках и внесено 183 изменения.
>>> Компания Canonical опубликовала новую минималистичную редакцию дистрибутива Minimal Ubuntu, оптимизированную для использование в облачных системах и изолированных контейнерах на базе платформы Docker. При разработке основное внимание уделялось высокой стабильности, максимальной производительности, минимальному времени загрузки и автоматизации применения в облачных системах.
>>> Доступен релиз дистрибутива Scientific Linux 6.10, построенного на пакетной базе Red Hat Enterprise Linux 6.10 и дополненного средствами, ориентированными на использование в научных учреждениях. Дистрибутив поставляется для архитектур i386 и x86_64, для загрузки доступны установочный DVD (4.1 Гб) и сокращённый образ для установки по сети (231 Мб). Из отличий Scientific Linux 6.10 от версии 6.9, не связанных с заимствованием изменений из RHEL, отмечается обновление OpenAFS до версии 1.6.22.3.
>>> Сформирован выпуск музыкального проигрывателя Elisa 0.2, построенного на основе технологий KDE и распространяемого под лицензией LGPLv3. Разработчики приложения пытаются воплотить в жизнь рекомендации по визуальному дизайну мультимедийных проигрывателей, разработанных рабочей группой KDE VDG. При развитии проекта основное внимание уделяется обеспечению стабильности, а уже потом наращиванию функциональности. Бинарные сборки в ближайшее время будут подготовлены для Linux (rpm для Fedora и универсальные пакеты flatpak), macOS и Windows.


Редакция портала:

Добро пожаловать на сайт, посвященный документации к ОС Linux, ее переводу и распространению. Мы надеемся, что Вы найдете тут всю необходимую информацию. Здесь представлены три основных вида документации на русском языке: руководства (man-pages), HOWTO и mini-HOWTO. В скором будущем возможно появление и других видов документации.
Авторские права на представленные документы принадлежат авторам перевода и распространяются в соответствии со Стандартной Общественной Лицензией, если в документе не указано обратное.
Если Вы обнаружите в опубликованных документах ошибки, опечатки, несоответствия и неточности - сообщите о них.