The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Увидел свет HTTP-сервер nginx 1.10.0 "
Отправлено opennews, 26-Апр-16 20:31 
После года разработки представлена (http://nginx.org/?1.10) новая стабильная ветка высокопроизводительного HTTP-сервера nginx 1.10.0 (http://nginx.org/), которая вобрала в себя изменения, накопленные в рамках основной ветки 1.9.x. В дальнейшем все изменения в  стабильной ветке 1.10 будут связаны с устранением серьёзных ошибок и уязвимостей. В скором времени будет сформирована основная ветка nginx 1.11, в рамках которой будет продолжено развитие новых возможностей. Для обычных пользователей, у которых нет задачи обеспечить совместимость со сторонними модулями, рекомендуется (http://nginx.com/blog/nginx-1-6-1-7-released) использовать основную ветку, на базе которой раз в три месяца формируются выпуски коммерческого продукта Nginx Plus.


В соответствии с апрельским отчетом (http://news.netcraft.com/archives/2016/04/21/april-2016-web-...) компании Netcraft nginx используется на 16.81% (год назад 14.24%, два года назад 14.22%) всех активных сайтов, что соответствует второму месту по популярности в данной категории (доля Apache соответствует 49.15%, а Microsoft IIS - 10.07%). Доля nginx среди всех сайтов составляет 13.23% (год назад 14.87%, два года назад 15.25%), среди миллиона самых посещаемых сайтов в мире - 25.64% (год назад 21.43%, два года назад 17.82%). В настоящее время под управлением nginx работает около 143 млн сайтов (год назад 126 млн). По данным (http://w3techs.com/technologies/overview/web_server/all) W3Techs 29.8% из миллиона самых посещаемых сайтов в мире используют nginx, в апреле прошлого года этот показатель составлял 23.8%. В России nginx используется (http://w3techs.com/technologies/breakdown/ws-nginx/top_level...) на 75.2% самых посещаемых сайтов (год назад - 71.3%).

Из улучшений (http://nginx.org/ru/CHANGES.ru-1.10), добавленных в процессе формирования основной ветки 1.9.x, можно отметить:

-  Добавлена поддержка динамически загружаемых модулей (http://nginx.org/en/docs/ngx_core_module.html#load_module). Модуль оформляется в виде разделяемой библиотеки и загружается при помощи директивы load_module (например, "load_module modules/ngx_mail_module.so"). Из поддерживающих динамическую загрузку модулей отмечаются (https://www.nginx.com/blog/dynamic-modules-nginx-1-9-11/):


-  GeoIP (ngx_http_geoip_module),

-  Image-Filter (ngx_http_image_filter_module),  

-  Mail (ngx_mail_{core, auth, imap, pop3, proxy, smtp}_module),

-  Stream (ngx_stream_{core, access, limit_conn, proxy, ssl, upstream}_module)

-  XSLT (ngx_http_xslt_module).
-  Perl (ngx_http_perl_module).


-  Интегрирован модуль stream с реализацией системы балансировки произвольных TCP- и UDP-соединений, позволяющей организовать проброс и распределение по нескольким узлам такого трафика, как обращения к СУБД, системам аутентификации, каталогам LDAP, RTMP-серверам, VoIP-системам, DNS-, syslog- или radius-серверам. Среди поддерживаемых (https://www.nginx.com/products/application-load-balancing/#l...) методов балансировки: round-robin (круговой перебор, при котором соединения равномерно распределяются среди обработчиков), least-connections (запрос перенаправляется к менее нагруженному серверу), least_time (перенаправление на сервер, демонстрирующий наиболее высокую отзывчивость) и hash (перенаправление на основе хэша от определённого пользователем параметра, например, IP). Подробнее о новом модуле можно прочитать в анонсе (https://www.opennet.ru/opennews/art.shtml?num=42076) открытия его исходных текстов;

-  Интегрирован модуль ngx_http_v2_module (http://nginx.org/en/docs/http/ngx_http_v2_module.html) с поддержкой протокола HTTP/2. Поддержка протокола SPDY (ngx_http_spdy_module), методы которого легли в основу HTTP/2, удалена из состава nginx.  С особенностями HTTP/2 можно познакомиться в тексте анонса (https://www.opennet.ru/opennews/art.shtml?num=42980) интеграции  HTTP/2 в кодовую базу nginx.

- В состав включен модуль ngx_http_slice_module (http://nginx.org/en/docs/http/ngx_http_slice_module.html) с реализацией фильтра, разбивающего запрос на подзапросы, каждый из которых возвращает определённую часть  ответа, что может быть использовано для увеличения эффективности кэширования больших ответов;


- Добавлена директива aio_write (http://nginx.org/en/docs/http/ngx_http_core_module.html#aio_...), управляющая применением AIO (http://nginx.org/en/docs/http/ngx_http_core_module.html#aio) при записи файлов;

- Добавлена директива "proxy_cache_convert_head (http://nginx.org/en/docs/http/ngx_http_proxy_module.html#pro...)", управляющая трансляцией метода HEAD в GET при кэшировании;
-  Добавлена директива zone (http://nginx.org/en/docs/http/ngx_http_upstream_module.html#...) в блок upstream, которая определяет зону разделяемой памяти, совместно используемую процессами-обработчиками);

-  В директиву "listen" добавлен параметр "reuseport", при указании которого сокет открывается с опцией SO_REUSEPORT, позволяющей   сразу нескольким слушающим сокетам подключиться к одному порту для приёма соединений. Указанная технология позволяет упростить распределение обработчиков соединения по разным процессам, избавившись от отдельного звена, распределяющего запросы по рабочим процессам;


-  В директиве  "worker_cpu_affinity (http://nginx.org/en/docs/ngx_core_module.html#worker_cpu_aff...)" реализована поддержка более 64 CPU  и добавлен новый параметр "auto", при указании которого привязка процессов-обработчиков к доступным CPU производится автоматически;
-  Реализована возможность одновременного использования нескольких директив "sub_filter";

-  В директиве "sub_filter (http://nginx.org/en/docs/http/ngx_http_sub_module.html)" обеспечена поддержка указания переменных в маске поиска замены.


-  Реализован параметр "nohostname" при настройке ведения логов через syslog;

-  В модуле ngx_http_realip_module реализована поддержка переменной $realip_remote_addr (http://nginx.org/en/docs/http/ngx_http_realip_module.html#va...), содержащей оригинальный IP клиента;

-  Добавлена поддержка системного вызова pwritev() (https://www.daemon-systems.org/man/pwritev.2.html);

-  Добавлена возможность использования директивы "include (http://nginx.org/en/docs/ngx_core_module.html#include)" в блоке "upstream (http://nginx.org/en/docs/http/ngx_http_upstream_module.html#...)";


- Добавлена переменная $upstream_connect_time, в которую записывается время отклика  upstream-сервера;

-  В fastcgi.conf, fastcgi_params, scgi_params и uwsgi_params добавлен параметр  REQUEST_SCHEME.
- Добавлена опция  "-T (http://nginx.org/en/docs/switches.html)" для проверки файла конфигурации с выводом дампа текущей конфигурации;
-  Прекращена поддержка устаревших методов обработки соединений aio и rtsig;

-  По умолчанию отключена поддержка протокола SSLv3.

URL: http://mailman.nginx.org/pipermail/nginx-ru-announce/2016/00...
Новость: http://www.opennet.ru/opennews/art.shtml?num=44316

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру