Мне нужно создать фоновую работу, которая просматривает список RSS-каналов и анализирует их, скажем, каждые 10 минут.
Я использовал delayed_job для обработки фоновых заданий, и мне это очень понравилось. Хотя я верю, что он не создан для повторяющихся фоновых заданий. Я думаю, что я могу автоматически планировать фоновую работу в конце каждого (возможно, с begin..rescue только для того, чтобы убедиться, что он выполняется). Или заранее укажите, что за месяц вперед стоит работа, и назначьте другую, которая перенесет каждый месяц .. и т. Д.
Это вызвало у меня некоторое беспокойство, когда я начал спрашивать себя: что, если сервер выйдет из строя в середине выполнения, а задания не будут запланированы?
Я также посмотрел на гемы Daemons, которые выглядели так, как будто они запускают простые сценарии Ruby с командами start / stop. Мне нравится, как delayed_job планирует и обрабатывает повторы.
Что вы рекомендуете использовать в этом случае? Как вы думаете, как лучше спроектировать такую систему с повторяющимися фоновыми заданиями? Кроме того, знаете ли вы, как я могу контролировать этот фоновый процесс и получать уведомления, если он останавливается?