Я использую Rufus Scheduler для вызова функции раз в 2 минуты.Rails - Пассажир и Nginx, препятствующие планированию rufus-scheduler в режиме производства
В режиме разработки при запуске планировщика rufus с WEBrick система работает так, как ожидалось, и моя функция вызывается каждые 2 минуты.
Когда я развертываю на нашем производственном сервере, который управляет пассажиром и NGINX, планировщик больше не вызывает эту функцию.
Я предполагаю, что это связано с потоками, при этом планировщик работает на отдельном потоке, который может быть уничтожен на нашем производственном сервере.
Я видел ответы на подобные вопросы при использовании Passenger и Apache вместе, но я не могу найти решение для запуска планировщика rufus с пассажиром и NGINX в режиме производства.
Любая помощь будет оценена по достоинству.
Код ниже настройки Руфус
# :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: