Re: announcing freenginx.org

2024-02-14 Пенетрантность Andrey Kopeyko

Gena Makhomed писал 2024-02-15 04:17:

On 14.02.2024 19:59, Maxim Dounin wrote:


Подобный подход можно понять: они владеют проектом, и могут с ним
делать всё, что считают нужным, включая подобные маркетинговые
акции.  Это, однако, противоречит нашемоу соглашению.  И, что более
важно, я больше не имею возможности как-либо контролировать
изменения, которые вносят в nginx в F5, и не могу рассматривать
nginx как открытый и свободный проект, разрабатываемый для общего
блага.

Так что, начиная с сегодняшнего дня, я больше не участвую в
разработке nginx'а в рамках F5.  Вместо этого я запускаю
альтернативный проект, управлять которым будут разработчики, а не
корпоративные структуры:

http://freenginx.org/

Цель проекта - обеспечить разработку nginx'а, свободную от
произвольного корпоративного вмешательства.  Помощь и участие
приветствуются.  Надеюсь, проект будет полезен для всех.


Максим, тут есть одна очень большая проблема.

Владельцем торговой марки NGINX является компания F5 NETWORKS, INC.
https://trademarks.justia.com/853/12/nginx-85312802.html

Своего разрешения на использование своей торговой марки NGINX
F5 NETWORKS, INC. Вам не давала, и скорее всего, что никгда не даст.


Максим,

Геннадий беспокоится обоснованно, и соображения написал все очень 
верные.


Если хочешь, могу попробовать организовать тебе консультацию по 
"доменам, IP, ТМ и судебном опыте вокруг этого всего" у специалистов 
Ру-Центра. За последние 25 лет они на этом не одну собачью стаю съели, и 
по буржуйским доменам тоже.





А вот дальнейшее развитие событий предусмотреть совсем не трудно.
Они будут преследовать Вас в судебном порядке за trademark infringement

Сначала - будет UDRP - Uniform Domain Name Dispute Resolution
https://www.icann.org/resources/pages/trademark-infringement-2017-06-20-en
а потом - могут в конечном итоге и вообще отобрать
у Вас домен freenginx.org этот домен станет их собственностью.
Учитывая их доходы - они смогут найти деньги на очень хороших
юристов и адвокатов, так что вопрос утраты контроля над доменом
freenginx.org - это не вопрос "если", это вопрос "когда"
- они это сделают. А если не сделают сейчас - то смогут сделать
в любой момент в будущем, полностью отобрав этот домен и запретив
Вам каким-либо образом использовать торговую марку NGINX. Например,
они могут заняться этим вопросом не сразу, а через некоторое время,
когда Ваш проэкт наберет некоторую популярность и посещаемость сайта
станет высокой. Имеет ли смысл так сильно рисковать основной веткой?
https://www.wipo.int/amc/en/domains/guide/


https://en.wikipedia.org/wiki/Trademark_infringement
- законодательство тут на их стороне и по закону они будут правы.
В https://en.wikipedia.org/wiki/WIPO входят практически все страны мира
и trademark infringement является нарушением закона практически в любой
стране. Даже если они не будут заниматься тем, чтобы отбирать у Вас
права на домен freenginx.org - они это смогут сделать в любой момент
времени в будущем, когда посчитают это целесообразным.
Может быть лучше будет переименовать проект в какое-то другое имя,
в котором вообще не будут упоминаться ничьи торговые марки?

Когда-то проекту CentOS пришлось не только убирать все упоминания
торговой марки Red Hat - они были вынуждены даже убрать все упоминания
Red Hat и заменить их на PNAELV.

PNAELV - это Prominent North American Enterprise Linux Vendor,
это слово не является ничьей торговой маркой и его использование
не запрещено. А вот торговую марку Red Hat без их разрешения
использовать нельзя. Аналогично будет и с торговой маркой NGINX.

Аналогично, например, было и с торговой маркой Apache -
из-за чего все дистрибутивы были вынуждены переименовать
веб-сервер в httpd.

Поэтому - лучше будет для основной ветки веб-сервера выбрать какое-то
имя, которое не является ничьей торговой маркой и для защиты этого
имени - зарегистрировать свою торговую марку, чтобы не было потом
ситуации "обратного захвата домена" - это когда вы используете
какое-то доменное имя, например, something.ru, при этом -
something не ялвяется торговой маркой. И потом, через какое-то
время - какой-то совершенно посторонний человек, регистрирует
торговую марку something, подает на Вас в суд и по решению суда
отбирает у Вас контроль над доменом something.ru не смотря на то,
что эта торговая марка не была зарегистрирована в момент регистрации
Вами домена something.ru - это ничего не меняет, суд будет на стороне
владельца торговой марки. Это и называется "обратный захват домена".
Для доменов зарегистрированных в международных TLD - ситуация не такая
однозначная, если домен был зарегистрирован до момента регистрации
соответствующей торговой марки - то еще могут быть варианты. Но если
Вы регистрируете домен freenginx.org в тот момент времени, когда
F5 NETWORKS, INC. является владельцем торговой марки NGINX - тогда
шансов удержать контроль над этим доменом - практически нет,
ведь Вы же здесь без их разрешения используете их торговую марку.

Это примерно то же самое, что кто-то зарегистрирует доме

Re: Тест nginx -- сколько сообщений в log syslog без потерь?

2024-02-14 Пенетрантность Gena Makhomed

On 14.02.2024 13:30, Anatoliy Melnik via nginx-ru wrote:


Если вы предлагаете писать напрямую с nginx-а в файл --
сделайте у себя ротацию файлов с интервалом 30 сек
при 200-250 тыс подключений/сек...

Если у вас уже есть такое рабочее решение -
поделитесь опытом, буду рад вас выслушать.



В этом сообщении Вы говорите о том, что Вы пробовали писать логи
"напрямую с nginx-а в файл" с ротацией с интервалом в 30 секунд,
при при 200-250 тыс подключений/сек, и у Вас не получилось
создать "рабочее решение".



Вы привели ПОЛНУЮ ЦИТАТУ! ОТЛИЧНО!
Я сказал ровно то, что и хотел сказать.
Где вы прочитали про "не получилось" ???
Пожалуйста процитируйте... без своих домыслов и фантазий.


А Вы помните, на какой именно мой вопрос Вы отвечали? Напомню:
https://mailman.nginx.org/pipermail/nginx-ru/2024-February/L3UKQXO2PKIHBFWHHTQRKDQY53XGE5BN.html

Я же практически прямым текстом Вам написал, что Ваша попытка
выжать максимум производительности из связки nginx-syslog -
это есть проблема Y и задал Вам вопрос, какую именно проблему X
Вы таким способом пытаетесь решить. И что я слышу в ответ -
что Вы не смогли получить работающую систему при 200-250 тысяч
подключений в секунду и при ротации логов раз в 30 секунд - именно
это и значают Ваши слова "Если у вас уже есть такое рабочее решение
- поделитесь опытом, буду рад вас выслушать" - если Вы спрашиваете,
как именно построить рабочую систему ротации логов при такой нагрузке,
то логично предположить, что Вы попытались это сделать, у Вас это
не получилось и Вы тогда пошли другим путем - писать логи
через syslog unix socket`ы, потому что там ротации не надо делать.

А невозможность получить "такое рабочее решение" при таких параметрах
нагрузки может быть вызвана только тем, что ротацию логов Вы делали
через SIGHUP а не через SIGUSR1.

То есть, я так и понял Ваш ответ на мой вопрос, что проблемой X,
которую Вам не удалось решить, является проблема ротации логов
nginx раз в 30 секунд при нагрузке в 200-250 тыс подключений/сек.

И поэтому - Вы, вместо того, чтобы искать решение проблемы Х,
начали решать проблему Y - искать способы, как оптимизировать
работу связки nginx-syslog - заведомо более затратный по ресурсам
способом, по сравнению с обработкой и ротацией логов по SIGUSR1.

И если я Вам задаю вопрос о том, в чем именно состоит Ваша проблема X,
которую Вы пытаетесь решить, а в ответ слышу про количество подключений
в секунду и интервал ротации раз в 30 секунд и "Если у вас уже есть
такое рабочее решение - поделитесь опытом, буду рад вас выслушать",
то что еще мне оствалалось подумать в этой ситуации, и каким еще
образом я мог бы понять Ваши слова? Вот попробуйте поставить себя
на мое место и посмотреть на эту ситуацию с моей точки зрения,
когда Вы задаете кому-то такой вопрос и слышие такой ответ.

И все последующее - это уже следствие того, что Вы начали
говорить, что syslog-unix socket-python - это есть решение
проблемы X. А сама проблема X у вас появилась из-за использования
SIGHUP дял ротации логов, вместо SIGUSR1. Понятно, что при таких
парметрах, 200-250 подключений в секунду и интервале ротации раз
в 30 секунд ничего работать не будет. Но при использовании SIGUSR1
- нет проблем, вне зависимости от того, какое там количество подключений
в секунду, 200 тысяч 250 тысяч или какое-либо еще, потому что рабочие
процессы при ротации через SIGUSR1 не перезапускаются, а всего лишь
переоткрывается лог-файл, что происходит практически мгновенно
и это очень дешевая операция, много ресурсов она не занимает.

Или все было совсем не так и это все является моими домыслами
и фантазиями и Ваши слова "Если у вас уже есть такое рабочее
решение - поделитесь опытом, буду рад вас выслушать" означают
что-то совершенно другое?

Я и поделился с Вами опытом - используйте SIGUSR1
вместо SIGHUP и тогда Ваша проблема X будет решена
и тогда не надо будет заниматься поиском решения
для проблемы Y - как сделать, чтобы связка nginx-syslog
через unix socket не глючила и не теряла сообщения.

Причина проблемы ведь не в nginx, причина проблемы
в syslog, потому что он читает данные в один поток,
и не успевает их обрабатывать. А когда вы создаете
10 потоков на Python - то вы увеличиваете мощность
"читателя" в 10 и более раз, потому что в такой
ситуации в каждый из unix socket`ов уходит в 10 раз
меньше сообщений и тогда читающая сторона успевает
эти сообщения читать и поэтому у nginx нет причин
чтобы дропать сообщения из-за того, что syslog
не успевает их читать из unix socket`а.


Причина, почему у Вас не получилось настроить ротацию лог-файлов
при записи логов "напрямую с nginx-а в файл" может быть в такой
ситуации только одна - для ротации лог-файлов Вы использовали
сигнал HUP а не сигнал USR1 - именно поэтому у Вас не получилось.



Вероятно вам не раз приходилось сталкиваться с подобным, и вы автоматически 
считаете, что так поступают все.
Распространенная модель поведения.
Еще раз -- единственная новость тут для меня была в том, что у меня не 
получилось.


Я именно так и понял Ваш ответ:

>>> Если вы

Re: announcing freenginx.org

2024-02-14 Пенетрантность raven...@megaline.kg

15.02.2024 01:25, izor...@gmail.com пишет:

Некоторым людям удобнее работать с форумом, попробовать можно :)


Форумы давно мертвы как формат общения. Исправно рабатают только старые 
площадки, с давно наруленным сообществом, но и они переживают не лучшие 
времена. Списки рассылки, кстати, направляются туда же. Всем теперь 
issues на github-е подавай :smile:
___
nginx-ru mailing list
nginx-ru@nginx.org
https://mailman.nginx.org/mailman/listinfo/nginx-ru


Re: announcing freenginx.org

2024-02-14 Пенетрантность Gena Makhomed

On 14.02.2024 19:59, Maxim Dounin wrote:


Подобный подход можно понять: они владеют проектом, и могут с ним
делать всё, что считают нужным, включая подобные маркетинговые
акции.  Это, однако, противоречит нашемоу соглашению.  И, что более
важно, я больше не имею возможности как-либо контролировать
изменения, которые вносят в nginx в F5, и не могу рассматривать
nginx как открытый и свободный проект, разрабатываемый для общего
блага.

Так что, начиная с сегодняшнего дня, я больше не участвую в
разработке nginx'а в рамках F5.  Вместо этого я запускаю
альтернативный проект, управлять которым будут разработчики, а не
корпоративные структуры:

http://freenginx.org/

Цель проекта - обеспечить разработку nginx'а, свободную от
произвольного корпоративного вмешательства.  Помощь и участие
приветствуются.  Надеюсь, проект будет полезен для всех.


Максим, тут есть одна очень большая проблема.

Владельцем торговой марки NGINX является компания F5 NETWORKS, INC.
https://trademarks.justia.com/853/12/nginx-85312802.html

Своего разрешения на использование своей торговой марки NGINX
F5 NETWORKS, INC. Вам не давала, и скорее всего, что никгда не даст.

А вот дальнейшее развитие событий предусмотреть совсем не трудно.
Они будут преследовать Вас в судебном порядке за trademark infringement

Сначала - будет UDRP - Uniform Domain Name Dispute Resolution
https://www.icann.org/resources/pages/trademark-infringement-2017-06-20-en
а потом - могут в конечном итоге и вообще отобрать
у Вас домен freenginx.org этот домен станет их собственностью.
Учитывая их доходы - они смогут найти деньги на очень хороших
юристов и адвокатов, так что вопрос утраты контроля над доменом
freenginx.org - это не вопрос "если", это вопрос "когда"
- они это сделают. А если не сделают сейчас - то смогут сделать
в любой момент в будущем, полностью отобрав этот домен и запретив
Вам каким-либо образом использовать торговую марку NGINX. Например,
они могут заняться этим вопросом не сразу, а через некоторое время,
когда Ваш проэкт наберет некоторую популярность и посещаемость сайта
станет высокой. Имеет ли смысл так сильно рисковать основной веткой?
https://www.wipo.int/amc/en/domains/guide/


https://en.wikipedia.org/wiki/Trademark_infringement
- законодательство тут на их стороне и по закону они будут правы.
В https://en.wikipedia.org/wiki/WIPO входят практически все страны мира
и trademark infringement является нарушением закона практически в любой
стране. Даже если они не будут заниматься тем, чтобы отбирать у Вас
права на домен freenginx.org - они это смогут сделать в любой момент
времени в будущем, когда посчитают это целесообразным.
Может быть лучше будет переименовать проект в какое-то другое имя,
в котором вообще не будут упоминаться ничьи торговые марки?

Когда-то проекту CentOS пришлось не только убирать все упоминания 
торговой марки Red Hat - они были вынуждены даже убрать все упоминания

Red Hat и заменить их на PNAELV.

PNAELV - это Prominent North American Enterprise Linux Vendor,
это слово не является ничьей торговой маркой и его использование
не запрещено. А вот торговую марку Red Hat без их разрешения
использовать нельзя. Аналогично будет и с торговой маркой NGINX.

Аналогично, например, было и с торговой маркой Apache -
из-за чего все дистрибутивы были вынуждены переименовать
веб-сервер в httpd.

Поэтому - лучше будет для основной ветки веб-сервера выбрать какое-то
имя, которое не является ничьей торговой маркой и для защиты этого
имени - зарегистрировать свою торговую марку, чтобы не было потом
ситуации "обратного захвата домена" - это когда вы используете
какое-то доменное имя, например, something.ru, при этом -
something не ялвяется торговой маркой. И потом, через какое-то
время - какой-то совершенно посторонний человек, регистрирует
торговую марку something, подает на Вас в суд и по решению суда
отбирает у Вас контроль над доменом something.ru не смотря на то,
что эта торговая марка не была зарегистрирована в момент регистрации
Вами домена something.ru - это ничего не меняет, суд будет на стороне
владельца торговой марки. Это и называется "обратный захват домена".
Для доменов зарегистрированных в международных TLD - ситуация не такая
однозначная, если домен был зарегистрирован до момента регистрации
соответствующей торговой марки - то еще могут быть варианты. Но если
Вы регистрируете домен freenginx.org в тот момент времени, когда
F5 NETWORKS, INC. является владельцем торговой марки NGINX - тогда
шансов удержать контроль над этим доменом - практически нет,
ведь Вы же здесь без их разрешения используете их торговую марку.

Это примерно то же самое, что кто-то зарегистрирует домен
freewindows.org и попробует создавать там Open Source
конкурента для Microsoft Windows. Не будет это работать.

Например, если компания Microsoft отобрала даже домен MikeRoweSoft.com
у канадского студента Mike Rowe который занимался веб-дизайном,
то и домен freewindows.org она точно так же отберет.
https://en.wikipedia.org/wiki/Microsoft_v._MikeRoweSoft

Да и то

Re: Тест nginx -- сколько сообщений в log syslog без потерь?

2024-02-14 Пенетрантность Anatoliy Melnik via nginx-ru




Evgeniy Berdnikov Wrote: 
--- 
> On Wed, Feb 14, 2024 at 02:30:57PM +0300, Anatoliy Melnik via nginx-ru 
> wrote: 
> > Все как раз получилось, дальше с этим работать было неудобно. 
> > К тупой записи в файл претензий не было. 
> 
> Вы не сообщили, почему "дальше с этим работать было неудобно". 
> Может, поясните? Если посмотреть на озвученный список задач -- 
> 
> > Зачем мне это нужно: 
> [...] 
> > Регулярно требуется "нестандартная" статистика, например 
> > "средний размер ($body_bytes_sent) по запросам типа "sc012" за 
> сутки" 
> > "соотношение обращений по http и https ($schema) по запросам типа 
> "q1wr" 
> > за час" 
> > "наименьшее/среднее/наибольшее время ($request_time) по запросам 
> типа 
> > "sc012" за..." 
> > "объем запросов типа "q1wr" (сумма $body_bytes_sent таких 
> запросов) в 
> > общем объеме трафика (сумма $body_bytes_sent всех запросов)" 
> > и т.д. 
> 
> то вроде трудно придумать что-то проще и эффективней, чем прост 
> парсинг 
> логов. А лог что из файла, что из пайпа, что из сокета читается 
> абсолютно одинаково, одним и тем же read(), и парсится одинаково. 
> 
> Но из файла якобы неудобно! Чем же неудобно, почему? При чём тут 
> вообще 
> какие-то unix-сокеты, если задача в разборе последовательно идущих 
> строк 
> и каких-то элементарных вычислениях? 

1. первоначально логи сливались по сети и централизованно считались.(без записи 
в файлы) 
при высоких нагрузках пошли расхождения. 
2. Хорошо -- пусть каждый прокси сам свое считает: исключаются потери по сети, 
каждый прокси в этом плане становится автономно-независимой единицей. 
При высоких нагрузках -- расхождения в статистике. 
3. Хорошо, запишем в файл прям с nginx-а. файл распарсим-посчитаем. 
3а.простыми методами (типа grep и awk) обработка статистики за 30 секунд 
занимает больше 30 секунд. 
3б.пишем в файл->читаем из файла->удаляем файл в объемах 30-60Мбайт/сек... 
лично мое мнение - файл тут явно лишний. (Ваше мнение может отличатся от моего, 
я абсолютно не настаиваю). 


> 
> > Чисто техничски можно и без access-логов, будете сами 
> реализовывать нечто 
> > подобное -- выберете более близкое вам решение. 
> 
> Вы не назвали альтернативные решения. 
Это сделали за меня: 
Написать свой бекэнд (как вариант на Go) и отзеркалировать туда запросы с 
фронотов 
Не имею ничего против -- реализовуйте! Я не настаиваю на своем варианте. 
Не продвигаю как единственно правильный (или у вас иное мнение?) 

> 
> > Мой вариант также страдает набором недостатков, но поставленные 
> задачи 
> > решает с устраивающей меня эффективностью. 
> 
> Вы не конкретизировали, какие недостатки видите у своего варианта и 
> почему его плюсы по сравнению с другими подходами перевешивают. 
Ну почему же? 
Недостатки: 
Скорее всего более высокая нагрузка на CPU по сравнению с альтернативой 
(замеров и испытаний никто не проводил, это чисто теоретический вывод) 
Предположительно масштабируемость моего решения хуже по сравнению с 
предложенной альтернативой (чисто теоретический вывод) 
Т.к. я не программист -- само качество решения в плане программного кода далеко 
от идеала. 
Жесткое неприятие выбранного мной подхода со стороны некоторых участников 
обсуждения (почему-- для меня до сих пор загадка). 
Плюсы: 
При передаче всего этого хозяйства дальше на обслуживание в моем варианте 
разберется любой начинающий питонист, в предложенной схеме с зеркалированием 
квалификация нужна будет повыше мне кажется. 
Запаса по вычислительной мощности более чем достаточно. 
На существующих мощностях практически гарантированный порог 720тыс/сек. 
прогнозируемый, (исходя из показателей работы системы на 240тыс/сек на одном 
сервере) -- порядка 1.1-1.2 млн./сек. 
Что в 3 (проверенный) и 5 (прогноз) раз превышает имеющийся на данный момент 
уровень. 
Чего хватает на 4-5 лет при росте нагрузки на 22-24% ежегодно. (имеющийся на 
данный момент прогноз оптимистичный оценивается максимум в 14-16% в год) 
Затраты времени на реализацию значительно меньше, чем вариант со своим 
бекэндом. 



> 
> > Свой вариант я могу абсолютно спокойно масштабировать до 
> необходимых мне 
> > значений, и эти значения почти на порядок выше текущих нагрузок. 
> 
> Вы крутейший специалист :)) в своих собственных глазах, конечно. 
Из лабиринтов собственных заблуждений скорее выберется тот, кто готов признать, 
что он заблуждается. 
Лично я этот путь приодолел не единожды. Чего и вам желаю. 
> 
> > Концптуальная ошибка в этом опусе -- вы не обслуживание клиентов. 
> > И "непродуктивность пути" определяете в данной конкретной 
> ситуации не вы. 
> > И конечную реализацию делаете не вы. 
> > И за результаты отвечаете не вы. 
> > Как и ответственность за все выполненное в итоге так же не на 
> вас. 
> 
> И что, это лишает собеседника право высказать своё мнение о 
> правильности 
> постановки задачи? 
Откуда такие выводы? 
Собеседник не единожды высказал свое мнение и даже больше. 
Придумал у меня проблему, которой нет. Привел для нее 

Re: announcing freenginx.org

2024-02-14 Пенетрантность izorkin
Добрый вечер, Максим.

Удачи, надеюсь всё получится!

Вы писали 14 февраля 2024 г., 22:06:08:

> С учётом деталей - скорее, форк остался у F5.  Развиваться будет 
> мной и теми, кто решит присоединиться.

Ну с этим вроде как уже помогаю :)
На данный момент у меня висит вопрос с MIME-типами. Хотелось бы уже
решить этот вопрос, актуализировать список и синхронизировать его со
списком в NixOS :)

> Не из области программирования - в первую очередь тестировать и 
> репортить проблемы.

Тут я имел не коммерческое использование, а анонсирование новых версий,
каких-либо новостей, опросов на добавление какой-либо функциональности.
В сети Fediverse сидят много технических специалистов :)
Некоторым людям удобнее работать с форумом, попробовать можно :)
> Нет, и опять же нет.  Продвижение особого смысла не имеет, проект 
> строго некоммерческий и не предполагает каких-либо коммерческих 
> перспектив.  Что до форумов, то это совершенно не мой формат 
> общения.


-- 
С уважением,
 Izorkin  mailto:izor...@gmail.com
___
nginx-ru mailing list
nginx-ru@nginx.org
https://mailman.nginx.org/mailman/listinfo/nginx-ru


Re: announcing freenginx.org

2024-02-14 Пенетрантность izorkin
Добрый вечер, Максим.

Удачи, надеюсь всё получится!

Вы писали 14 февраля 2024 г., 22:06:08:

> С учётом деталей - скорее, форк остался у F5.  Развиваться будет 
> мной и теми, кто решит присоединиться.

Ну с этим вроде как уже помогаю :)
На данный момент у меня висит вопрос с MIME-типами. Хотелось бы уже
решить этот вопрос, актуализировать список и синхронизировать его со
списком в NixOS :)

> Не из области программирования - в первую очередь тестировать и 
> репортить проблемы.

Тут я имел не коммерческое использование, а анонсирование новых версий,
каких-либо новостей, опросов на добавление какой-либо функциональности.
В сети Fediverse сидят много технических специалистов :)
Некоторым людям удобнее работать с форумом, попробовать можно :)
> Нет, и опять же нет.  Продвижение особого смысла не имеет, проект 
> строго некоммерческий и не предполагает каких-либо коммерческих 
> перспектив.  Что до форумов, то это совершенно не мой формат 
> общения.


-- 
С уважением,
 Izorkin  mailto:izor...@gmail.com
___
nginx-ru mailing list
nginx-ru@nginx.org
https://mailman.nginx.org/mailman/listinfo/nginx-ru


Re: announcing freenginx.org

2024-02-14 Пенетрантность Maxim Dounin
Hello!

On Wed, Feb 14, 2024 at 09:32:54PM +0300, izor...@gmail.com wrote:

> Добрый вечер, Максим.
> 
> Печально всё это слышать...
> Будет развиваться как очередной форк Nginx или каким-то другим 
> способом будет вестись разработка?

С учётом деталей - скорее, форк остался у F5.  Развиваться будет 
мной и теми, кто решит присоединиться.

[...]

> > Так что, начиная с сегодняшнего дня, я больше не участвую в
> > разработке nginx'а в рамках F5.  Вместо этого я запускаю
> > альтернативный проект, управлять которым будут разработчики, а не
> > корпоративные структуры:
> 
> > http://freenginx.org/
> 
> Какая помощь приветствуется не из области программирования?)

Не из области программирования - в первую очередь тестировать и 
репортить проблемы.

> Нет ли желания продвижения в сети Fediverse (микро-блог, аналог
> Twitter)?
> Нет ли в планах поднять какой-нибудь небольшой форум?

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

-- 
Maxim Dounin
http://mdounin.ru/
___
nginx-ru mailing list
nginx-ru@nginx.org
https://mailman.nginx.org/mailman/listinfo/nginx-ru


Re: announcing freenginx.org

2024-02-14 Пенетрантность izorkin
Добрый вечер, Максим.

Печально всё это слышать...
Будет развиваться как очередной форк Nginx или каким-то другим 
способом будет вестись разработка?

Вы писали 14 февраля 2024 г., 20:59:51:

> Hello!

> Как вы, вероятно, знаете, компания F5 закрыла офис в Москве в 2022
> году, и с тех пор я не работают в F5.  Однако после закрытия офиса
> мы достигли соглашения, что я сохраняю свою роль в разработке
> nginx'а как волонтёр.  И почти два года я занимался тем, что
> развивал nginx, делая его лучше для всех.

> К сожалению, кто-то из нетехнического менеджмента F5 недавно решил,
> что знает лучше, как следует управлять открытыми проектами.  В
> частности, кто-то решил, что не следует руководствоваться
> security-политикой, используемой nginx'ом в течении многих лет, а
> равно не следует учитывать мнение разработчиков.

> Подобный подход можно понять: они владеют проектом, и могут с ним
> делать всё, что считают нужным, включая подобные маркетинговые
> акции.  Это, однако, противоречит нашемоу соглашению.  И, что более
> важно, я больше не имею возможности как-либо контролировать
> изменения, которые вносят в nginx в F5, и не могу рассматривать
> nginx как открытый и свободный проект, разрабатываемый для общего
> блага.

> Так что, начиная с сегодняшнего дня, я больше не участвую в
> разработке nginx'а в рамках F5.  Вместо этого я запускаю
> альтернативный проект, управлять которым будут разработчики, а не
> корпоративные структуры:

> http://freenginx.org/


Какая помощь приветствуется не из области программирования?)
Нет ли желания продвижения в сети Fediverse (микро-блог, аналог
Twitter)?
Нет ли в планах поднять какой-нибудь небольшой форум?
> Цель проекта - обеспечить разработку nginx'а, свободную от
> произвольного корпоративного вмешательства.  Помощь и участие
> приветствуются.  Надеюсь, проект будет полезен для всех.


-- 
С уважением,
 Izorkin  mailto:izor...@gmail.com
___
nginx-ru mailing list
nginx-ru@nginx.org
https://mailman.nginx.org/mailman/listinfo/nginx-ru


announcing freenginx.org

2024-02-14 Пенетрантность Maxim Dounin
Hello!

Как вы, вероятно, знаете, компания F5 закрыла офис в Москве в 2022
году, и с тех пор я не работают в F5.  Однако после закрытия офиса
мы достигли соглашения, что я сохраняю свою роль в разработке
nginx'а как волонтёр.  И почти два года я занимался тем, что
развивал nginx, делая его лучше для всех.

К сожалению, кто-то из нетехнического менеджмента F5 недавно решил,
что знает лучше, как следует управлять открытыми проектами.  В
частности, кто-то решил, что не следует руководствоваться
security-политикой, используемой nginx'ом в течении многих лет, а
равно не следует учитывать мнение разработчиков.

Подобный подход можно понять: они владеют проектом, и могут с ним
делать всё, что считают нужным, включая подобные маркетинговые
акции.  Это, однако, противоречит нашемоу соглашению.  И, что более
важно, я больше не имею возможности как-либо контролировать
изменения, которые вносят в nginx в F5, и не могу рассматривать
nginx как открытый и свободный проект, разрабатываемый для общего
блага.

Так что, начиная с сегодняшнего дня, я больше не участвую в
разработке nginx'а в рамках F5.  Вместо этого я запускаю
альтернативный проект, управлять которым будут разработчики, а не
корпоративные структуры:

http://freenginx.org/

Цель проекта - обеспечить разработку nginx'а, свободную от
произвольного корпоративного вмешательства.  Помощь и участие
приветствуются.  Надеюсь, проект будет полезен для всех.


-- 
Maxim Dounin
http://freenginx.org/
___
nginx-ru mailing list
nginx-ru@nginx.org
https://mailman.nginx.org/mailman/listinfo/nginx-ru


Re: Тест nginx -- сколько сообщений в log syslog без потерь?

2024-02-14 Пенетрантность Evgeniy Berdnikov
On Wed, Feb 14, 2024 at 02:30:57PM +0300, Anatoliy Melnik via nginx-ru wrote:
>Все как раз получилось, дальше с этим работать было неудобно.
>К тупой записи в файл претензий не было.

 Вы не сообщили, почему "дальше с этим работать было неудобно".
 Может, поясните? Если посмотреть на озвученный список задач --

>Зачем мне это нужно:
[...]
>Регулярно требуется "нестандартная" статистика, например
>"средний размер ($body_bytes_sent) по запросам типа "sc012" за сутки"
>"соотношение обращений по http и https ($schema) по запросам типа "q1wr"
>за час"
>"наименьшее/среднее/наибольшее время ($request_time) по запросам типа
>"sc012" за..."
>"объем запросов типа "q1wr" (сумма $body_bytes_sent таких запросов) в
>общем объеме трафика (сумма $body_bytes_sent всех запросов)"
>и т.д.

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

 Но из файла якобы неудобно! Чем же неудобно, почему? При чём тут вообще
 какие-то unix-сокеты, если задача в разборе последовательно идущих строк
 и каких-то элементарных вычислениях?

>Чисто техничски можно и без access-логов, будете сами реализовывать нечто
>подобное -- выберете более близкое вам решение.

 Вы не назвали альтернативные решения.

>Мой вариант также страдает набором недостатков, но поставленные задачи
>решает с устраивающей меня эффективностью.

 Вы не конкретизировали, какие недостатки видите у своего варианта и
 почему его плюсы по сравнению с другими подходами перевешивают.

>Свой вариант я могу абсолютно спокойно масштабировать до необходимых мне
>значений, и эти значения почти на порядок выше текущих нагрузок.

 Вы крутейший специалист :)) в своих собственных глазах, конечно.

>Концптуальная ошибка в этом опусе -- вы не обслуживание клиентов.
>И "непродуктивность пути" определяете в данной конкретной ситуации не вы.
>И конечную реализацию делаете не вы.
>И за результаты отвечаете не вы.
>Как и ответственность за все выполненное в итоге так же не на вас.

 И что, это лишает собеседника право высказать своё мнение о правильности
 постановки задачи? Вы также не сообщили, каковы критерии "продуктивности
 пути", почему выбрана конретная реализация и т.д. Поэтому нет никаких
 оснований даже подозревать, что Вы что-то делаете правильно... :)

>Эффективность реализации весьма эфемерное понятие.
>Эффективность с точки зрения чего?
>Мы с вами эффективность считаем по совершенно разным критериям.
>Это не хорошо и не плохо. Это просто по-разному :)

 Вы не конкретизировали, по каким критериям оцениваете эффективность.

>Оптимизировать можно по разным критериям.
>Вы исходите из одних критериев оптимальности, я из других.
>И это абсолютно нормально.
>Не стоит убеждать меня в "неправильности" моих критериев.

 Ненормально то, что один собеседник пытается аргументировать свои мысли,
 а другой всё время отвечает "Не учите меня жить! У меня другая ситуация!"
 А какая именно -- не говорит.
-- 
 Eugene Berdnikov
___
nginx-ru mailing list
nginx-ru@nginx.org
https://mailman.nginx.org/mailman/listinfo/nginx-ru


nginx security advisory (CVE-2024-24989, CVE-2024-24990)

2024-02-14 Пенетрантность Sergey Kandaurov
В реализации HTTP/3 в nginx были обнаружены две проблемы, которые
позволяют атакующему с помощью специально созданной QUIC-сессии вызвать
падение рабочего процесса (CVE-2024-24989, CVE-2024-24990), а также
потенциально другие последствия (CVE-2024-24990).

Проблеме подвержен nginx, собранный с модулем ngx_http_v3_module (по
умолчанию не собирается), если в конфигурационном файле используется
параметр quic директивы listen.

Проблеме подвержен nginx 1.25.0 - 1.25.3.
Проблема исправлена в nginx 1.25.4.


-- 
Sergey Kandaurov

___
nginx-ru mailing list
nginx-ru@nginx.org
https://mailman.nginx.org/mailman/listinfo/nginx-ru


nginx-1.25.4

2024-02-14 Пенетрантность Sergey Kandaurov
Изменения в nginx 1.25.4  14.02.2024

*) Безопасность: при использовании HTTP/3 в рабочем процессе мог
   произойти segmentation fault во время обработки специально созданной
   QUIC-сессии (CVE-2024-24989, CVE-2024-24990).

*) Исправление: соединения с незавершенными AIO-операциями могли
   закрываться преждевременно во время плавного завершения старых
   рабочих процессов.

*) Исправление: теперь nginx не пишет в лог сообщения об утечке сокетов,
   если во время плавного завершения старых рабочих процессов было
   запрошено быстрое завершение.

*) Исправление: при использовании AIO в подзапросе могла происходить
   ошибка на сокете, утечка сокетов, либо segmentation fault в рабочем
   процессе (при SSL-проксировании).

*) Исправление: в рабочем процессе мог произойти segmentation fault,
   если использовалось SSL-проксирование и директива image_filter, а
   ошибки с кодом 415 перенаправлялись с помощью директивы error_page.

*) Исправления и улучшения в HTTP/3.


-- 
Sergey Kandaurov

___
nginx-ru mailing list
nginx-ru@nginx.org
https://mailman.nginx.org/mailman/listinfo/nginx-ru


Re: Тест nginx -- сколько сообщений в log syslog без потерь?

2024-02-14 Пенетрантность Anatoliy Melnik via nginx-ru




Gena Makhomed Wrote: 
--- 
> On 05.02.2024 15:21, Anatoliy Melnik via nginx-ru wrote: 
> 
> >> какую именно проблему Вы пытаетесь решить с помощью записи логов 
> >> в unix socket, чтения данных из unix socket`а питоновским 
> скриптом 
> >> и потом записи данных этим питоновским скриптом в текстовой файл? 
> 
> > Если вы предлагаете писать напрямую с nginx-а в файл -- 
> > сделайте у себя ротацию файлов с интервалом 30 сек 
> > при 200-250 тыс подключений/сек... 
> 
> > Если у вас уже есть такое рабочее решение - 
> > поделитесь опытом, буду рад вас выслушать. 
> 
> В этом сообщении Вы говорите о том, что Вы пробовали писать логи 
> "напрямую с nginx-а в файл" с ротацией с интервалом в 30 секунд, 
> при при 200-250 тыс подключений/сек, и у Вас не получилось 
> создать "рабочее решение". 
> 

Вы привели ПОЛНУЮ ЦИТАТУ! ОТЛИЧНО! 
Я сказал ровно то, что и хотел сказать. 
Где вы прочитали про "не получилось" ??? 
Пожалуйста процитируйте... без своих домыслов и фантазий. 


> И Вы просите, чтобы я поделился с Вами опытом, как построить 
> такое рабочее решение и говорите, что будете рады меня выслушать. 
> 
> Если настроить ротацию логов через сигнал USR1 
> - никаких проблем с самой ротацией не должно быть, 
> при любом количестве подключений. 
> 
> Тем более, что с помощью дополнительных параметров 
> [buffer=size] [gzip[=level]] [flush=time] директивы 
> access_log можно настроить и буферизацию записи логов 
> и компрессию на лету - чтобы еще больше оптимизировать 
> использование ресурсов процессора и занимаемого логами 
> места на диске сервера. 
> 
> Расскажите, пожалуйста, какие тут у Вас могли возникнуть проблемы, 
> что не получилось построить рабочее решение, 
> если "писать напрямую с nginx-а в файл" ? 
> 
> Я пока что вижу только всего одну возможную причину, 
> почему у Вас не получилось создать такое рабочее решение 
> - для ротации логов Вы использовали сигнал HUP а не сигнал USR1. 
> 
> Потому что только в случае ротации логом с помощью сигнала HUP 
> количество подключений в секунду и интервал ротации в 30 секунд 
> могут влиять на процесс ротации, потому что при этом происходит 
> 
> "changing configuration, keeping up with a changed time zone 
> (only for FreeBSD and Linux), starting new worker processes 
> with a new configuration, graceful shutdown of old worker processes". 
> 
> Если же делать ротацию логов с помощью сигнала USR1, 
> тогда не имеет особой разницы, какое количество подключений 
> в секунду обрабатывают рабочие процессы и и с каким интервалом 
> происходит ротация лог-файлов, потому что если делать ротацию 
> с помощью сигнала USR1 - перезапуска рабочих процессов не происходит, 
> и происходит только лишь "re-opening log files", что является очень 
> дешевой и очень быстрой операцией, такая ротация происходит 
> практически мгновенно и не создает дополнительной нагрузки 
> на систему. 

Хорошо, вы озвучили ожидаемое, много где (в том числе в документации nginx) 
описанное, а кое-где по умолчанию прям в дефолтовых конфигах примененное 
решение. 

> 
> Причина, почему у Вас не получилось настроить ротацию лог-файлов 
> при записи логов "напрямую с nginx-а в файл" может быть в такой 
> ситуации только одна - для ротации лог-файлов Вы использовали 
> сигнал HUP а не сигнал USR1 - именно поэтому у Вас не получилось. 
Вероятно вам не раз приходилось сталкиваться с подобным, и вы автоматически 
считаете, что так поступают все. 
Распространенная модель поведения. 
Еще раз -- единственная новость тут для меня была в том, что у меня не 
получилось. 
Все как раз получилось, дальше с этим работать было неудобно. 
К тупой записи в файл претензий не было. 
Я по простоте душевной допустил ту же оплошность, что и вы -- решил, что раз 
пишу логи для дальнейшей обработки данных из них, то и все остальные поступают 
так же... 



> 
> On 05.02.2024 15:21, Anatoliy Melnik via nginx-ru wrote: 
> 
> >> какую именно проблему Вы пытаетесь решить с помощью записи логов 
> >> в unix socket, чтения данных из unix socket`а питоновским 
> скриптом 
> >> и потом записи данных этим питоновским скриптом в текстовой файл? 
> 
> > Если вы предлагаете писать напрямую с nginx-а в файл -- 
> > сделайте у себя ротацию файлов с интервалом 30 сек 
> > при 200-250 тыс подключений/сек... 
> 
> > Если у вас уже есть такое рабочее решение - 
> > поделитесь опытом, буду рад вас выслушать. 
> 
> Почему Вам не подходит решение 
> использовать сигнал USR1 для ротации логов? 
> 
> Ведь Вы же прямо говорите в этом своем сообщении, что проблема 
> у Вас именно с тем, что не удается настроить сам процесс ротации 
> логов с интервалом 30 сек при 200-250 тыс подключений/сек. 
> 
> О другой проблеме - нехватки свободного места на диске сервера 
> для записи логов, или о проблеме низкой пропускной способности 
> дисковой подсисетмы в своем ответе - Вы ничего не говорите. 
> 
> Это же какие у Вас получаются там объемы логов nginx за 30 секунд, 
> что может не хватать пропускн