1

Я работаю с планировщиком 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 

может любой скажите, пожалуйста, почему эти очереди выполняются в два раза каждый раз, или что-то, что мне не хватает.

Просто дайте мне знать что-нибудь нужное.

+1

У вас есть два процесса выполнения этого кода? Это приведет к тому, что он будет поставлен в очередь дважды. –

+0

I второй Крис. Указывая, какой сервер вы используете (Unicorn, Thin, Webrick, Puma и т. Д.) И в каком режиме тоже поможет. – jmettraux

+0

Я использую сервер Apache – guru

ответ