отправляется операция запуска процесса, какой-то инстанс его ловит и стартует
Через некоторое время стоит задача остановить процесс командой на том же инстансе (а инстансов может быть много), однако балансировщик может кинуть запрос в какой угодно инстанс. Как можно решить данную проблему?
зачем так сложно? может просто с какой то логикой завершать приложуху, например по RESTfull команда stop с session_id или по времени 10 мин работы
Первое что в голову приходит - отправлять команду через pub/sub с айдишником задачи. Кто нужно поймает и остановит Но все это напоминает изобретение полноценной очереди задач
Флаг остановки процесса можно писать в базу, не важно на какую ноду попадет через балансировщик - в базу все равно запишется. А сам воркер периодически смотрит на этот флаг в базе, если есть, то останавливается
Обсуждают сегодня