У меня есть приложение, которое использует resque для выполнения некоторых длительных заданий. Иногда требуется 8 часов или более для завершения.Узнайте, все еще запущено задание resque и убейте его, если оно застряло
В ситуациях, когда задание не удается, существует ли способ отслеживать самовоспроизведение, чтобы проверить, работает ли работа? Я знаю, что могу обновить статус задания в таблице базы данных (или самому redis), но я хочу знать, работает ли работа, поэтому я могу ее убить, если это необходимо.
конкретные вещи, которые мне нужно сделать это:
- Определить, если работа по-прежнему работает
- Определяют если работа остановлена
- Убейте рабочих мест, которые застряли
Благодарим за это. Кажется очевидным, что это убьет задания, которые продлились через определенный период времени (хотя без определения того, застряла ли работа или просто обрабатывается). Работы, которые я выполняю, могут занимать от нескольких минут до 24 часов или больше часов в зависимости от базовых данных. –
@KevinBedell: вы можете установить время ожидания до 36-48 часов, тогда :) –
Да, это правда. Я думаю, мне нужно объединить это с тем, чтобы следить за ходом работы напрямую, чтобы я мог видеть, работает ли он еще. –