0

我在Ruby on Rails 4.1.4网络应用程序中使用 Rufus Scheduler 3.0.3,它与 Unicorn 配合得很好。我搬到了 Puma,这很棒,但我意识到 Rufus 没有与 Puma 合作(守护进程)。

我已阅读此问题 #183(评论)https://github.com/puma/puma/issues/183#issuecomment-59386038 ,该问题已针对早期版本关闭,但它仍然无法正常工作,我不清楚是否已经有一个修复它。

我不知道在此期间是否有解决方法。

更新:显示的日志不多,我的 rufus 调度程序任务在与 Unicorn 一起运行时正在运行,但如果我将服务器更改为 Puma,它不会在我的笔记本电脑上运行任何自动化任务。即使没有任何日志可以显示。

我只是添加我当前的 Rufus 调度程序文件:

task_scheduler.rb:

begin 

  require 'rufus-scheduler'

  scheduler = Rufus::Scheduler.new

  #Secretary responsible for executing events every 60 seconds.
  scheduler.every '60s' do
    Secretary.executeEvents
  end

  # Statistics (Owner) calculation every 1 day.
  scheduler.every '24h' do
    StatisticsCalculator.updateOwnerStatistics
  end
end

我是否缺少任何配置?

在 Puma 方面,我只有这个配置文件 config/puma/development.rb ,只有这个:

 stdout_redirect 'log/puma.stdout.log', 'log/puma.stderr.log', true

我没有设置任何工人等...

4

2 回答 2

1

不,它有效。

我为您打包了这个示例项目:

https://github.com/jmettraux/for_rober

Rufus-scheduler 3.0.3 可以很好地与 Puma 2.9.2(Debian GNU/Linux 上的 Ruby 1.9.3)一起调度。

感谢您没有在没有事实的情况下指责其他人的工作。

如果真的有问题,我建议你去阅读http://www.chiark.greenend.org.uk/~sgtatham/bugs.html,然后再阅读一遍,三遍。它肯定会以您的母语提供。然后,如果您真的认为 rufus-scheduler 是罪魁祸首,请前往https://github.com/jmettraux/rufus-scheduler/issues打开一份详细的问题报告小心发布蹩脚的“它不起作用”材料,它'只会给你带来负面反应。

更新

我强烈建议你在你的机器上克隆我的迷你项目并尝试它,然后在评论中报告结果。详细信息在项目的 README.md 中。

更新

罗伯托正试图直接在https://github.com/puma/puma/issues/607上并行解决这个问题

于 2014-11-24T01:07:25.747 回答
1

最后,它看起来有一个小问题。彪马的家伙们已经很好地修复了它。

请参阅: https ://github.com/puma/puma/issues/607

于 2014-11-24T20:24:49.197 回答