バックグラウンドでジョブを実行するために、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
しかし、成功しません。ハイヤーファイアもロードされていますが、以下のスクリーンショットも参照してください