0

Ruby on Rails 4.1.4 Web アプリで 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を読んでから、もう一度 3 回読むことをお勧めします。母国語で利用できることは間違いありません。次に、本当に rufus-scheduler が原因だと思う場合は、https://github.com/jmettraux/rufus-scheduler/issuesで詳細な問題レポートを開いてください。否定的な反応しか得られません。

更新

私のミニプロジェクトを自分のマシンに複製して試してみることを強くお勧めします。その結果をここのコメントで報告してください。詳細はプロジェクトの README.md にあります。

更新

Roberto は、この問題を並行して直接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 に答える