8

私はdelayed_job今しようとしていて、いくつか質問があります。

http://github.com/collectiveidea/delayed_jobページから、いくつかの情報を確認できます。

ワーカーは、データベースにアクセスでき、クロックが同期されている限り、任意のコンピューターで実行できます。各ワーカーは少なくとも 5 秒ごとにデータベースをチェックすることに注意してください。

  1. 一度呼び出すと、1 つのワーカーrake jobs:workが作成されますよね?

  2. ワーカーがデータベースをチェックすると、すべての新しいタスクと失敗したタスクが毎回読み込まれ、実行されますか?

  3. ワーカーは 5 秒ごとにデータベースをチェックすると書いてありますが、2 秒にできますか?

  4. worker( rake jobs:work) を作成すると、データベースには既に 10 個のタスクがあり、それぞれに 3 秒かかります。DelayedJob はいくつのプロセスを作成しますか? 合計で何秒必要ですか?

4

1 に答える 1

13
  1. はい
  2. はい
  3. Delayed::Worker.sleep_delay = 2
  4. 1 人のワーカーが順番に各タスクに取り組み、成功または失敗してから次のタスクに進みます。合計 30 秒 + ただし、合計時間は 9 回のスリープ遅延です (デフォルトでは 45 秒)。プロセスに関するあなたの質問にどのように答えればよいかわかりません。プロセスである 1 つのワーカーが作成されます。実行するジョブに応じて、0 個以上の他のプロセスが作成される場合があります。
于 2010-07-11T07:32:32.697 に答える