2015-01-07 5 views
1

2 분마다 한 번씩 Rufus Scheduler를 사용하여 함수를 호출합니다.Rails - rufus-scheduler가 프로덕션 모드에서 스케줄링하지 못하도록하는 Passenger와 Nginx

WEBrick과 함께 rufus 스케줄러를 실행할 때 개발 모드에서 시스템은 예상대로 작동하고 내 기능은 2 분마다 호출됩니다.

승객과 NGINX를 실행하는 프로덕션 서버에 배포 할 때 스케줄러는 더 이상이 함수를 호출하지 않습니다.

이것은 우리의 프로덕션 서버에서 파괴 될 수있는 별도의 스레드에서 실행되는 스케줄러와 함께 스레드와 관련된다고 가정합니다.

Passenger와 Apache를 함께 사용했을 때 유사한 문제에 대한 답변을 보았지만 승객 및 NGINX가 생산 모드 인 rufus 스케줄러를 실행하는 솔루션을 찾을 수 없습니다.

도움을 주시면 감사하겠습니다. 루퍼스

# :nocov: 
require 'rufus-scheduler' 
include TwitterParser 
unless ENV['NODAEMON'] || Rails.env != 'production' 
    scheduler = Rufus::Scheduler.new 
    TwitterParser.set_up 

    scheduler.every '2m' do 
    begin 
     TwitterParser.parse_tweets 
    rescue Twitter::Error::TooManyRequests => error 
     puts 'Too Many Twitter requests, resets in: ' + error.rate_limit.reset_in.to_s 
    end 
    end 
end 
# :nocov: 

답변