Я использую rufus-scheduler для ежедневного запуска процесса с сервера rails. В целях тестирования, скажем, каждые 5 минут. Мой код выглядит так:
в config / initializers / task_scheduler.rb
scheduler = Rufus::Scheduler::PlainScheduler.start_new
scheduler.every "10m", :first_in => '30s' do
# Do stuff
end
Я также пробовал формат cron:
scheduler.cron '50 * * * *' do
# stuff
end
например, чтобы процесс запускался каждый час через 50 минут после часа.
Неистовая часть в том, что она работает на моей локальной машине. Процесс будет проходить регулярно и просто работать. Только в моем приложении, развернутом в рабочей среде, этот процесс будет запускаться один раз, а не повторяться.
ps faux показывает, что cron работает, пассажир обрабатывает ускорение процесса рельсов, сайт снова пингуется, поэтому он знает, что он должен обновиться, и производство показывает изменения в коде. Единственное, что отличается тем, что запланированное задание без предупреждения или ошибки не повторяется.
Помощь!