Релиз http-сервера nginx 1.2.0
23 апреля 2012 года
После 19 экспериментальных выпусков в тестовой ветке 1.1.x представлена новая стабильная версия высокопроизводительного HTTP-сервера nginx 1.2.0. В дальнейшем в рамках новой стабильной ветки API не будет меняться, все существенные изменения будут развиваться в рамках новой экспериментальной ветки 1.3.x.
В соответствии с апрельским отчетом компании Netcraft nginx используется на 12.76% всех активных сайтов и на 10.09% из миллиона самых посещаемых сайтов в мире. Год назад nginx использовался на 8.68% всех активных сайтов и 6.52% популярных сайтов. За год nginx перешагнул десятипроцентный рубеж и вытеснил IIS на третье место в рейтинге популярности активных сайтов. В настоящее время под управлением nginx работает около 23.4 млн хостов. По данным W3Techs 11% из миллиона самых посещаемых сайтов в мире используют nginx, в апреле прошлого года этот показатель составлял 6.8%. В России nginx используется на 58.2% самых посещаемых сайтов (год назад - 46.9%).
Из улучшений, добавленных по сравнению с веткой 1.0.x, можно отметить:
- Модуль ngx_http_upstream_keepalive для включения keep-alive соединений с вышестоящими серверами;
- Модуль ngx_http_limit_zone_module, позволяющий ограничить число соединений по определённому критерию, переименован в ngx_http_limit_conn_module
- Директива proxy_redirect теперь поддерживает регулярные выражения и переменные в первом параметре.
- Директива proxy_http_version, задаёт версию протокола HTTP для проксирования.
- Директива fastcgi_keep_conn, позволяет организовать постоянные соединения с FastCGI-серверами.
- Директива worker_aio_requests.
- Директива limit_zone заменена директивой limit_conn_zone с новым синтаксисом.
- Директива disable_symlinks, определяет, как следует поступать с символическими ссылками при открытии файлов.
- Директивы [proxy/fastcgi/scgi/uwsgi]_cache_lock, [proxy/fastcgi/scgi/uwsgi_cache_lock]_timeout. В директивах [proxy/fastcgi/scgi/uwsgi]_cache_path добавлена поддержка параметров loader_Файлs, loader_sleep и loader_threshold;
- Директивы proxy_cookie_domain и proxy_cookie_path, задают текст, который нужно изменить в атрибутах domain и path полей “Set-Cookie” заголовка ответа проксируемого сервера
- Директива pcre_jit, которая разрешает или запрещает использование JIT-компиляции (PCRE JIT) для регулярных выражений, известных на момент парсинга конфигурации.
- Директивы xslt_param и xslt_string_param, которые задают параметры для XSLT-шаблонов;
- Новая переменная $https, которая принимает значение «on» если соединение работает в режиме SSL.
- Новая переменная $connection_requests.
- Новые переменные $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd и $tcpinfo_rcv_space c информацией о клиентском TCP-соединении.
- Поддержка указания нескольких DNS-серверов в директиве «resolver».
- Добавлен параметр valid в директиве resolver. По умолчанию теперь используется TTL, возвращённый DNS-сервером;
- Поддержка ограничения по нескольким limit_conn на одном уровне.
- Добавлен параметр so_keepalive в директиве listen;
- Добавлен параметр if_not_empty в директивах fastcgi/scgi/uwsgi_param;
- Теперь можно указать несколько ограничений limit_req одновременно.
- Добавлен параметр from в директиве disable_symlinks.
- Директива worker_cpu_affinity теперь работает на FreeBSD.
- Загрузчик кэша за каждую итерацию либо обрабатывает число файлов, указанное в параметре load_Файлs, либо работает не дольше времени, указанного в параметре loader_threshold.
- Изменение во внутреннем API: теперь при внутреннем редиректе в именованный location контексты модулей очищаются.
- Если сервер, описанный в блоке upstream, был признан неработающим, то после истечения fail_timeout на него будет отправлен только один запрос; сервер будет считаться работающим, если успешно ответит на этот запрос.
- После перенаправления запроса с помощью директивы error_page директива proxy_pass без URI теперь использует изменённый URI.
- Ограничение на количество одновременных подзапросов поднято до 200.
- Теперь keepalive соединения не запрещены для Safari по умолчанию.
Из добавленных в процессе разработки nginx 1.1.x новшеств, которые были перенесены в ветку 1.0.x можно выделить:
- Модуль ngx_http_mp4_module для организации потокового вещания из файлов в формате H.264/AAC.
- Директива image_filter_sharpen для повышения резкости итогового изображения.
- Директива lingering_close, управляет закрытием соединений с клиентами.
- Директивы uwsgi_buffering и scgi_buffering.
- Директива max_ranges, ограничивает максимальное допустимое число диапазонов в запросах с указанием диапазона запрашиваемых байт (byte-range requests).
- Уменьшение потребления памяти при использовании SSL.
- SSI команда if поддерживает выделения в регулярных
выражениях.
- Параметры TLSv1.1 и TLSv1.2 в директиве ssl_protocols.
- Директивы return и error_page теперь могут использоваться
для возврата перенаправлений с кодом 307.
- Двойные кавычки экранируются при выводе
SSI-командой echo.
- Cимволы 0x7F-0xFF в access_log записываются в виде
\\xXX.
- Директивы «proxy/fastcgi/scgi/uwsgi_ignore_headers"
теперь поддерживают значения X-Accel-Limit-Rate, X-Accel-Buffering и X-Accel-Charset.
- На NetBSD поддерживаются accept фильтры.
- Если суммарный размер всех диапазонов больше
размера исходного ответа, то nginx возвращает только исходный ответ, не обрабатывая диапазоны.
- Уменьшение времени работы загрузчика кэша.
- Поддержка шифров с обменом ECDHE-ключами.
- Уменьшение времени загрузки конфигураций с большим количеством HTTPS серверов.
- Разделяемые зоны и кэши используют семафоры POSIX
в Solaris.
Источники
[править]Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии[править]
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.
- 23 апреля 2012
- Новости 2012 года
- 2012
- 23 апреля
- Апрель 2012
- Материалы OpenNET
- Загружено ботом в архив
- Загружено ботом в архив/OpenNET
- Архивные новости
- Nginx
- Веб-серверы
- Компьютерные технологии
- Наука и технологии
- Программное обеспечение
- Свободное программное обеспечение
- Технологии
- Опубликовано
- Россия в апреле 2012 года