我有一个运行在Nginx/Passenger上的Rails应用程序。它有一个rufus-scheduler cron作业,在后台运行,并通过电子邮件发送通知。
当我在Nginx/Passenger上启动生产环境中的应用程序时,电子邮件不会发送。在生产日志中,它没有显示rufus-scheduler的任何日志。
我陷入了这个问题。无法调试调度程序。
但在阅读了一些问题和文章后,我确信调度器线程在生产时被乘客杀死。
代码片段:
示例:
require 'rufus-scheduler'
scheduler = Rufus::Scheduler::singleton
scheduler.cron '0 12 * * *' do
puts "alert scheduler called at"
puts Time.now
system("rake trigger:email RAILS_ENV=production")
end请在允许调度线程运行和触发邮件的passenger/nginx的conf上帮助我。
发布于 2017-02-13 21:13:12
您需要在passanger配置块中设置此设置
passenger_spawn_method直接访问;
https://stackoverflow.com/questions/42204718
复制相似问题