1

バックグラウンドでジョブを実行するために、herokuで雇用されたgem「delayed_job_active_record」を使用しています.herokuアカウントを使用してheroku環境変数も設定しました。gemファイルの私のシーケンスは以下のとおりです

   gem 'delayed_job_active_record'
   gem 'daemons'
   gem 'hirefire'

開発だけでなく、本番環境でもローカル環境で動作しています。しかし、遅延ジョブテーブルからherokuでジョブが起動しません。最初に、インティライザーで構成ファイルhirefire.rbを使用せずに試してみましたが、成功しませんでした。このコードを以下に追加して配置した後。

           HireFire.configure do |config|

             if Rails.env.production?
              config.max_workers = 5 # default is 1
              config.min_workers = 0 # default is 0
              config.job_worker_ratio = [
               {:jobs => 1, :workers => 1},
               {:jobs => 15, :workers => 2},
               {:jobs => 35, :workers => 3},
               {:jobs => 60, :workers => 4},
               {:jobs => 80, :workers => 5}
              ]
        end
      end

しかし、成功しません。ハイヤーファイアもロードされていますが、以下のスクリーンショットも参照してください ここに画像の説明を入力

4

1 に答える 1

0

Rails.env.production?おそらくそこをチェックして、代わりに入れるべきではありませんconfig/environments/production.rb

Heroku でdelayed_job_active_record を設定する方法については、https ://devcenter.heroku.com/articles/delayed-job をお読みください。

于 2013-02-20T16:30:24.867 に答える