それで、私はDelayed::Jobを本番環境でしばらくの間泳いでいました。
仕事に変更を加えるときはいつでもそうします(すべての生産環境であなたを気にかけます)
- [スクリプト] ( https://github.com/tobi/delayed_job/wiki/Running-Delayed::Worker-as-a-daemon )を使用して遅延ジョブを再起動します。
- を使用してジョブをクリアします
rake jobs:clear
また、monit を実行しています。monit を停止し、スクリプトを再起動してから、monit を開始しました。この順序で...まだサイコロはありません。
とにかく、私たちは皆、古いジョブをメモリから取り出すためにこれを行います。ジョブ キューをクリアするのは、私がそうしているためです。そのステップは必要ないかもしれませんし、私のアプリでは問題ありません。
ただし、最近これらの手順を使用しても、何らかの理由で新しいジョブ コードがリセットされません。job_runner.log ファイルを見ると、スクリプトを再起動するとこのエラーが発生します
*** below you find the most recent exception thrown, this will be likely (but not certainly) the exception that made the applicati
on exit abnormally ***
#<SystemExit: exit>*** below you find all exception objects found in memory, some of them may have been thrown in your application, others may just be in memory because they are standard exceptions ***
#<NoMemoryError: failed to allocate memory>
#<SystemStackError: stack level too deep>
#<fatal: exception reentered>
#<LoadError: no such file to load -- rubygems/defaults/operating_system>
#<LoadError: no such file to load -- daemons>
#<NameError: uninitialized constant Rails::Plugin::HoptoadNotifier>
#<Errno::ENOENT: No such file or directory - /var/rails/wigify/tmp/pids/job_runner.pid>
#<SystemExit: exit>
だから私は何が起こっているのか分かりません。そのスタック レベルが深すぎるというエラーは、私のコードに起因するものですか? 以前と同じように、すべての統合テストに合格しました。
スライスにメモリの問題がありますか? free
私がそれをすると、平均で300MBあると言われますが?
ここで兄弟を助けることができるのは誰ですか?