On 16.09.2024 21:06, Konstantin Pavlov wrote:

Мы поддерживаем несколько разных ОС в наших пакетах на nginx.org (и еще больше - для коммерческой версии), и не во всех них есть поддержка alternatives.  По этой причине не хотелось бы это реализовывать для какой-то одной конкретной ОС если нельзя сделать везде одинаково.

это можно сделать везде одинаково, на всех Linux/UNIX системах.

если же переключение между release / debug версями происходит с помощью
двух отдельных сервисов nginx.service и nginx-debug.service, то в таком
случае переключение между ними происходит с потерей соединений клиентов

Делать столько уникальной логики, опять же уходя от привычной многим и документированной системы alternatives, для очень редкой ситуации когда нужно запустить дебаг-версию?

Кажется, гораздо проще, если уж нельзя воспроизвести проблему на стенде, сделать временно:

mv /usr/sbin/nginx /usr/sbin/nginx.bak

mv /usr/sbin/nginx-debug /usr/sbin/nginx

service nginx upgrade


гораздо проще для пользователя как open source версии nginx,
так и коммерческой версии nginx-plus было бы просто выполнить
одну команду для переключения между release и debug версиями:

nginx upgrade to debug

nginx upgrade to release

nginx upgrade

привычная многим система alternatives есть не во всех ОС,
и везде одинаково сделать можно только в том случае,
если эту логику реализовать прямо внутри nginx.

команды service вскоре не будет, ее планируют выбросить из systemd:

https://github.com/systemd/systemd/blob/main/NEWS

* Support for System V service scripts is deprecated and will be
  removed in a future release. Please make sure to update your software
  *now* to include a native systemd unit file instead of a legacy
  System V script to retain compatibility with future systemd releases.

--
Best regards,
 Gena
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
https://mailman.nginx.org/mailman/listinfo/nginx-ru

Ответить