現在、Heroku のスケジューラを使用してスクリプトを実行しています。ただし、スクリプトの実行にかかる時間は、数ミリ秒から数分に増加します。このプロセスを Worker Dyno にプッシュするために、delayed_job gem を使用することを考えています。このスクリプトを 1 日 1 回実行し続け、ワーカーにオフロードするだけです。私の現在のレーキタスクは次のとおりです。
desc "This task updates some stuff for you."
task :update_some_stuff => :environment do
puts "Updating some stuff ..."
SomeClass.new.process
puts "... done."
end
gem がインストールされ、移行が実行され、worker dyno が開始されたら、スクリプトを次のように変更するだけで済みます。
desc "This task updates some stuff for you."
task :update_some_stuff => :environment do
puts "Updating some stuff ..."
SomeClass.new.delay.process
puts "... done."
end
このタスクはまだ Heroku のスケジューラによってスケジュールされた rake タスクですが、ここで行う必要があるのは、delay
これを Worker のキューに入れるメソッドの導入だけですか?
助けてくれてありがとう。