0

私のローカル バージョンでは、9000 以上の遅延ジョブを実行しているバックグラウンド プロセスがあります (文字通り、ドラゴンボール z ジョークではありません)。

私の理解では、バックグラウンド ジョブを使用する理由は、サーバーがバックグラウンドで作業を行うためにいくつかのリソースを割り当てている間、Web インターフェースにアクセスできるようにするためです。しかし、遅延したジョブが実行されている間は Web サイトにアクセスできないため、そうではないようです (ブラウザーはアニメーションの読み込みバーを何度も表示し続けます。

雑種サーバーを使用しているからでしょうか?または、これを回避する方法はありますか?

ありがとうございました

追加情報

script/delayed_job start の代わりに rake jobs:work を実行したからでしょうか?

しかし、私は次のいずれかを実行すると:

script/delayed_job start
RAILS_ENV=development script/delayed_job start
ruby RAILS_ENV=development script/delayed_job start
ruby script/delayed_job start

私はこれらを手に入れました:

-bash: script/delayed_job: No such file or directory
-bash: script/delayed_job: No such file or directory
ruby: No such file or directory -- RAILS_ENV=development (LoadError)
ruby: No such file or directory -- script/delayed_job (LoadError)

私は何を間違えましたか?誰か助けてくれませんか?

4

1 に答える 1

0

おそらく、スクリプトコマンドをインストールしていません。これを実行する必要があります:

> rails g delayed_job:active_record

その後、次のようにファイルが作成されるため、通常どおりに使用できます。(出力)

     create  script/delayed_job
     chmod  script/delayed_job
     create  db/migrate/20120109185353_create_delayed_jobs.rb

参照: http: //railscasts.com/episodes/171-delayed-job-revised?view = asciicast

于 2012-07-03T17:41:01.377 に答える