django-rq を使用して、django サイトで実行時間の長いタスクを処理しています。これらのタスクは、(私が推測する) rqworker の 180 秒のタイムアウトをトリップします。
JobTimeoutException: Job exceeded maximum timeout value (180 seconds).
このタイムアウト値を増やすにはどうすればよいですか? --timeout 360 を rqworker コマンドに追加しようとしましたが、認識されません。
私のpythonコードでは、長時間実行されるジョブは次の方法で呼び出されます
django_rq.enqueue(
populate_trends,
self,
)
そして試してみました
django_rq.enqueue_call(
func=populate_trends,
args=(self,),
timeout=3600,
)
rq docsで気づいたのですが、django-rq にはそのような方法がないようです。
アップデート
今のところ、django-rq をフォークし、プレースホルダーの修正を追加してタイムアウトを増やしました。長期的な解決策を得るには、おそらくプロジェクトと協力する必要があります。私は議論するためにそこで問題を開始しました。