Я работаю с планировщиком resque и rufus.работа выполняется дважды, работая с планировщиком resque и rufus при разработке
Я создал две разные очереди для двух разных задач resque и смог выполнить обе очереди.
Но я столкнулся с одной проблемой, так как обе очереди выполняются дважды каждый раз.
Вот Scheduler.rb файл:
Каталог: конфиг/Инициализаторы/scheduler.rb
require 'rubygems'
require 'rufus/scheduler'
scheduler = Rufus::Scheduler.new
scheduler.cron '46 19 * * *' do
Resque::Job.create(:monitoring_queue, Monitoring)
end
scheduler.every '60m' do
Resque::Job.create(:execute_monitoring_queue, ExecuteMonitor)
end
Вот спасательная работа файл-1 monitoring.rb
class Monitoring
@queue = :monitoring_queue
def self.perform()
begin
Monitor.check_and_confirm
NotificationMailer.notification_email.deliver
rescue Exception => e
puts e.message
e.backtrace.join("\n")
end
end
end
Вот спасательная работа файл-2 execute_monitor.rb
class ExecuteMonitor
@queue = :execute_monitoring_queue
def self.perform()
begin
Monitor.confirm_and_check
NotificationMailer.notification_email.deliver
rescue Exception => e
puts e.message
e.backtrace.join("\n")
end
end
end
может любой скажите, пожалуйста, почему эти очереди выполняются в два раза каждый раз, или что-то, что мне не хватает.
Просто дайте мне знать что-нибудь нужное.
У вас есть два процесса выполнения этого кода? Это приведет к тому, что он будет поставлен в очередь дважды. –
I второй Крис. Указывая, какой сервер вы используете (Unicorn, Thin, Webrick, Puma и т. Д.) И в каком режиме тоже поможет. – jmettraux
Я использую сервер Apache – guru