Где мне следует разместить фоновые процессы в рельсах?

StackOverflow https://stackoverflow.com/questions/2059117

Вопрос

Я создаю проект Rails с заданием типа cron, которым я управляю с помощью Rufus Scheduler.У меня есть два вопроса о том, как правильно настроить это в Rails:

  1. Где лучше всего разместить код вакансии?
  2. Где мне следует разместить код Rufus, чтобы запланировать задание?Как мне это начать?
Это было полезно?

Решение

Чтобы управлять планировщиком, я бы создал config/initializers/task_scheduler.rb:

task_scheduler = Rufus::Scheduler.start_new  

task_scheduler.every("1m") do  
   Something.to_do! # Do something every minute! 
end

Теперь о Something.to_do код, это зависит от того, что он делает.Возможно, это модель данных, и ее следует включить в app/models каталог, но если это что-то более общее, вы можете поместить его в lib/.Если у вас накопилось несколько запланированных задач, возможно, вы захотите создать app/scheduled_tasks каталог, но это может быть излишним для одного файла.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top