URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 111934
[ Назад ]

Исходное сообщение
"Выпуск nginx 1.13.4"

Отправлено opennews , 08-Авг-17 23:08 
Доступен (http://mailman.nginx.org/pipermail/nginx-announce/2017/00020...) новый выпуск основной ветки высокопроизводительного HTTP-сервера nginx 1.13.4 (http://nginx.org/), в котором реализованы следующие изменения (http://nginx.org/en/CHANGES):

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


-  Решена проблема с обрывом соединений при выполнении операции тестирования корректности конфигурации на платформе Linux, в случае использовании опции "reuseport" в директиве "listen";
-  Решена проблема с недоступностью тела запроса для подзапросов, если используется проксирование и в процессе заполнения кэша осуществлена запись в файл;


-  Улучшена поддержка платформы Windows: налажена работа чистки кэша в соответствии с лимитом, заданным через парамер "max_size", решены проблемы с выделением разделяемой памяти и устранён крах процессов-обработчиков при использовании директивы "zone" в блоке "upstream".

URL: http://mailman.nginx.org/pipermail/nginx-announce/2017/00020...
Новость: http://www.opennet.me/opennews/art.shtml?num=46989


Содержание

Сообщения в этом обсуждении
"Выпуск nginx 1.13.4"
Отправлено Аноним , 08-Авг-17 23:08 
mirror, хорошая идея, интересно для вебсокета работает?

"Выпуск nginx 1.13.4"
Отправлено Анан , 08-Авг-17 23:54 
По секрету скажу, что оно и до этого существовало (недокументировая опция была), но работало весьма себе. Большие клиенты, похоже, решили надавить, а Сысоев/Бартенев/и_ко решили сразу опенсурцнуть. Для websocket маловероятно, что заведётся — это ж, по сути, stream proxy получается. Запрос/параметры/тело/ответ не различить.

"Выпуск nginx 1.13.4"
Отправлено RomanCh , 09-Авг-17 01:22 
Вы про костыль с post_action, или существовал именно mirror?

"Выпуск nginx 1.13.4"
Отправлено Андрейка , 14-Авг-17 16:33 
Именно post_action http://mailman.nginx.org/pipermail/nginx/2012-November/03619...

Не знаю почему он костыль? Как по мне модуль делает тоже самое (особенно если сравнить код)


"Выпуск nginx 1.13.4"
Отправлено istepan , 09-Авг-17 07:44 
> Улучшена поддержка платформы Windows

Пустая трата времени и ресурсов.


"Выпуск nginx 1.13.4"
Отправлено A.Stahl , 09-Авг-17 08:57 
Ну и кто ты такой чтобы осуждать их за то, как они проводят своё время?

"Выпуск nginx 1.13.4"
Отправлено istepan , 09-Авг-17 09:44 
Не, ну если хотят поддерживать платформу на которую ставят их софт от силы 5% от общего числа.

Вообще интересно было бы глянуть статистику nginx по ОС.


"Выпуск nginx 1.13.4"
Отправлено Аноним , 09-Авг-17 10:01 
Если у тебя в ЦОД-е есть поддерживаемый сервер на WS и ты можешь запустить на нём то что считаешь нужным здесь и сейчас(для внутреннего использования к примеру) или у тебя есть перспектива погрязнуть в бюрократии выбивая себе "правильный" сервер, то что ты выберешь, при этом понимая что находишься на этапе разработки прототипа который взлетит с вероятностью 10-20%?

"Выпуск nginx 1.13.4"
Отправлено istepan , 09-Авг-17 11:05 
Подниму виртуалку и запущу nginx в нормальном для него окружении.

"Выпуск nginx 1.13.4"
Отправлено . , 09-Авг-17 18:36 
> Подниму виртуалку и запущу nginx в нормальном для него окружении.

молодец, теперь тебе надо поддерживать в рабочем и актуальном состоянии и виртуалку, и ее хост. И зачем ты это сделал, если можно было просто запустить nginx на хосте, ась?


"Выпуск nginx 1.13.4"
Отправлено Агроном , 10-Авг-17 02:13 
Это лучше, чем поддерживать разрабатывать на платформе с одними нюансами поведения, а эксплуатировать с другими.
Хинт: под виндой и линухом не все работает одинаково.

"Выпуск nginx 1.13.4"
Отправлено пох , 09-Авг-17 18:40 
> Вообще интересно было бы глянуть статистику nginx по ОС.

что-то мне подсказывает, что она бесполезна - там, где используют nginx из под винды, все равно на выходе стоит либо nginx'овый фронтенд, либо какой-нибудь appliance, и хрен ты узнаешь, сколько их было и каких.

то есть статистика в данном случае - всего лишь очень большая ложь.


"Выпуск nginx 1.13.4"
Отправлено unknown , 09-Авг-17 09:40 
Лучше бы healthcheck допилили в opensource

"Выпуск nginx 1.13.4"
Отправлено Аноним , 09-Авг-17 13:59 
Иж чего захотел, если вырос до такой степени что тебе он нужен, заплати денежку. Хотя как вариант можешь им написать и по клянчить на халяву.

"Выпуск nginx 1.13.4"
Отправлено Аноним , 09-Авг-17 10:36 
Поддержку brotli никак не хотят осилить. Даже статику, по аналогии с gzip_static. Малюсенький патчик https://trac.nginx.org/nginx/ticket/798
То ли денег за это хотят, то ли ...

"Выпуск nginx 1.13.4"
Отправлено . , 09-Авг-17 18:35 
то ли нафиг никому оно не надо.
(ну, может, кроме гугля, но он уже и сам о себе позаботился - и если потом окажется, что посадил какую-нибудь out-of-bounds непосредственно в библиотеке (в коде nginx вряд ли) - ломанут гугля, а не всех счастливчиков - и тухлые помидоры гуглю)
Смысл всех этих .gz давным-давно в прошлом, каналы безразмерные (или бездонные?), а вот cpu всегда не хватает. К тому же большая часть так-называемого-веб-контента сегодня несжимаема.

(страдания гугля и cloudflare оставим, пусть страдают дальше)


"Выпуск nginx 1.13.4"
Отправлено Аноним , 10-Авг-17 12:59 
Ну, не стоит говорить за всех сразу. Не все сидят на оптике, есть "счастливые" обладатели мобильного инета со слабым сигналом или в забитом под завязку эфире. И тогда скачать 4 метра или 5 - разница существенная.
Никаких уязвимостей не будет - если речь про brotli_static - просто отдавать файл.br если он есть на диске, разве что будет лишний вызов stat.
И проц не просядет, распаковке бротли жрёт примерно столько же, сколько и gzip.
http://www.gstatic.com/b/brotlidocs/brotli-2015-09-22.pdf

"Выпуск nginx 1.13.4"
Отправлено . , 10-Авг-17 13:53 
> И тогда скачать 4 метра или 5 - разница существенная.

существенная, только на самом деле разница будет 50 или 40 килобайт, и то, если ты читаешь сайт газеты "правда".
Ну есть же девтулзы и network в них - открой да и посмотри на объемы скачиваемого.

1. графические элементы оформления (даже на опеннете - логотип, реклама, кнопки)
1a. шрифты... впрочем, они все равно с fonts.google.com
2. (содержательные, не оформление) графика и видео внутри страницы, если сайт чуть современней опеннета
это несжимаемо вообще
3. скрипты и css'ы - те, кто страдают от лишнего траффика, давно уже a) все обообфусцировали до минимума, b) саутсорсили куда-то в rawgit, если нельзя напрямую из cdn jquery/гугля/амазона/тыщи их и все равно оно на их сервер с их бролтем даже и не полагается c) вообще-то по хорошему оно должно кэшироваться, и дальше if-modified-since дело все равно не заходит, вечная беда горе-вебдизайнера, приходится добавлять к имени файла какой-нибудь мусор, чтобы, наоборот, избежать кэша
то есть оно во-первых, плохосжимаемо в принципе, во-вторых, выгода от сжатия микроскопическая на фоне управляющего траффика - даже если раздавать по-старинке, с собственного сервера, а это совсем немодно.

и вот где-то вот ту-у-у--ут мы наконец-то докопались до собственно .html, который мог бы быть и .br (хм-хм, а часто тебе попадает совсем статический html?) , но смысл? Его-то килобайты, а счетчик траффика у тебя уже мегабайты насчитал (а чаще десятки).

гугл и какой-нибудь факбук - отдельная песня, но они-то уже о себе позаботились, включая и продавливание поддержки во все браузеры, у них для этого есть ресурсы.


"Выпуск nginx 1.13.4"
Отправлено Аноним , 09-Авг-17 16:56 
не собирается из исходников с модулем ngx_pagespeed(

"Выпуск nginx 1.13.4"
Отправлено Аноним , 10-Авг-17 13:48 
Про mirror может кто нибудь более внятно объяснить?

"Выпуск nginx 1.13.4"
Отправлено Аноним , 10-Авг-17 13:49 
Что оно вообще делает?

"Выпуск nginx 1.13.4"
Отправлено пох , 10-Авг-17 14:01 
> Что оно вообще делает?

делает дублирование запроса на миррорящие серверы.
То есть на твой GET myHorseporn.jpg?token=1343525626 с server1 делает такой же GET с server2,3 и 4. Результат выбрасывает в /dev/null (тебе уже ответил server1), но сервера 2,3 и 4 думают, что ты к ним за этим зашел (и если на такой get внутри должна была сработать какая-то небанальная механика - она срабатывает).

В результате, даже когда налетчики из лиги борцов за освобождение лошадок взорвали датацентр с сервер1, бабки с твоего счета мы все равно спишем, так как у нас остались еще три, и в их логах все в наличии, не отбазаришься.

Понятно, что это чудовищно неэффективный способ, поскольку на один твой запрос получается четыре к четырем разным серверам, зато можно головой вообще только есть (ну или ничего не знать о начинке тех серверов и даже доступа к ней не иметь).


"Выпуск nginx 1.13.4"
Отправлено XoRe , 10-Авг-17 18:01 
Ещё помогает дублировать боевые запросы на сервер разработчиков.
Так можно мучить новую сборку боевыми запросами.