Обработка обновления службы SidekiqLinux

Ответить
Anonymous
 Обработка обновления службы Sidekiq

Сообщение Anonymous »

Я использую этот модульный файл Linux для нашей службы Sidekiq:

Код: Выделить всё

[Unit]
Description=sidekiq low
After=syslog.target network.target

[Service]
Type=simple
WorkingDirectory=/var/www/backend/current
Environment="RAILS_ENV=production"
ExecStart=/home/deploy/.rvm/gems/ruby-2.6.9/wrappers/bundle exec sidekiq -C /var/www/backend/shared/config/sidekiq_low.yml

ExecReload=/bin/kill -USR1 $MAINPID
ExecStop=/bin/kill -USR1 $MAINPID

KillMode=mixed
TimeoutStopSec=86400

User=deploy
Group=deploy
UMask=0002

Environment=MALLOC_ARENA_MAX=2

# if we crash, restart
RestartSec=1
Restart=always

SyslogIdentifier=sidekiq_low

[Install]
WantedBy=multi-user.target
Это работает хорошо, однако, поскольку мы часто выпускаем новые изменения, нам необходимо перезапустить службу Sidekiq, чтобы запустить новый процесс с отражением новых изменений исходного кода.
Проблема в том, что рабочим иногда требуются часы, чтобы закончить работу, поэтому я отправил сигнал USR1:

Код: Выделить всё

ExecReload=/bin/kill -USR1 $MAINPID
ExecStop=/bin/kill -USR1 $MAINPID
чтобы корректно дождаться завершения работы старых процессов, но как применить жесткий тайм-аут для этих старых процессов, прежде чем они окончательно завершатся?
Я ожидаю, что при перезапуске сервера будут запущены новые процессы, а старые ждут завершения своей работы.
применит ли TimeoutStopSec=86400 фактическое уничтожение этих зависших процессов?
как я могу увидеть эти старые процессы?
статус systemctl не выявляет зависшие процессы

Код: Выделить всё

sudo systemctl status sidekiq-low@1974.service
● sidekiq-low@1974.service - sidekiq low
Loaded: loaded (/etc/systemd/system/sidekiq-low@1974.service; enabled; preset: enabled)
Active: active (running) since Wed 2024-07-10 13:31:14 UTC; 2h 5min ago
Main PID: 143529 (ruby)
Tasks: 39 (limit: 18829)
Memory: 540.4M (peak: 541.5M)
CPU: 5min 57.873s
CGroup: /system.slice/system-sidekiq\x2dlow.slice/sidekiq-low@1974.service
└─143529 "sidekiq 6.5.12 backend [0 of 30 busy]"
Просвещение приветствуется!

Подробнее здесь: https://stackoverflow.com/questions/787 ... ce-refresh
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Linux»