Динамическое число контролируемых процессов
Я использую [program:x] супервизора, чтобы мои фоновые очереди работали. Количество numprocs установлено на статическое число, но сейчас я ищу решение для динамической регулировки количества процессов в зависимости от загруженности очередей.
Можно ли (программно) изменить количество настроек numprocs супервизора, не затрагивая уже работающих работников?
2 ответа
На этот раз я думаю, что ответ - нет. Лучше всего спросить об этом в списке пользователей руководителя, чтобы быть уверенным.
Вы можете изменить количество работающих рабочих, отредактировав конфигурацию, затем запустив "supervisorctl update" или эквивалентные команды XMLRPC. Проблема в том, что существующие процессы для программы будут перезапущены. Текущая реализация только проверяет, изменился ли конфиг для программы или нет. Он не обрабатывает особый случай, когда изменились только цифры.
Теперь можно контролировать количество процессов, выполняемых через API XML-RPC.
Доступно несколько клиентов, в зависимости от языка, некоторые из них упоминаются в этом разделе документации и здесь: