2016-04-15 3 views
0

У меня есть форма, когда пользователь может установить день в неделю и период времени (например, с понедельника с 02:00 до 03:00). Затем я хочу запустить определенный метод (периодически, например, каждые 30 секунд), но только в течение заданного интервала времени (он должен выполняться на фоне каждого понедельника в 02:00 и 03:00, каждые 30 секунд). Возможно ли это сделать, когда временной интервал создается динамически (пользователем)?Метод запуска периодически в ручном режиме, созданный интервал в Rails

+0

Попробуйте это: http://stackoverflow.com/questions/4602418/rails-whenever-gem-dynamic-values ​​ –

+0

попробовать использовать delayed_job камень в рельсах –

+0

Вы можете использовать такие инструменты, как Руфус-планировщик https://github.com/jmettraux/Руфус-планировщик –

ответ

1

Вы можете определить задание cron, которое выполняет задачу рейка (см. Это для синтаксического сахара: https://github.com/javan/whenever). Ваша задача рейка может выполняться каждые X секунд и запрашивать базу данных для новых заданий.

Однако вызов рек задачи через хроны сапог рельсов приложения каждый раз, так что более suffisticated подход будет использовать sidekiq (http://sidekiq.org/) в сочетании с sidekiq-планировщиком (https://github.com/moove-it/sidekiq-scheduler).

Смежные вопросы