のRailsプロジェクトでdelayed_job
、私は何か奇妙なことに遭遇しています。
私はarticle
モデルを持っています。このモデルは非常に大きくなる可能性があり、いくつかのフィールドに多くの段落のテキストがあります。
私が行った場合:
an_article.delay.do_something
作成されたDelayed::Job
ものはキューに入れられず、失敗または成功としてマークされることはなく、ログはそれが存在することを認識しません。しかし、私がそうするなら
def self.proxy_method(article_id)
an_article = Article.find(article_id)
an_article.do_something
end
Article.proxy_method(an_article.id)
意図したとおりに機能します。
ジョブオブジェクトのサイズに関する不文律はありますか?なぜAは機能しないが、Bは機能するのでしょうか。
私が持っている理論の1つは、mongolab(430/496 mb)のデータ上限に近いため、ジョブがdbに到達しないというものですが、これを実際に証明するログやエラーはありません。
注:heroku、rails3.1でmongoidを使用するdelayed_job