2010-12-29 9 views
2

私はRails 3とRuby 1.8.7を実行しています。私は常に生産ログにこれを見ています。ループの部分的な部分の1つは、過度の時間をかけてレンダリングされます。Random Railsレンダリングに非常に時間がかかる3エルバパーシャル。

レンダリングエントリ/ _entry.html.erb(5.9ms)
レンダリングエントリ/ _entry.html.erb(7.9ms)
レンダリングエントリ/ _entry.html.erb(6.1ms)
レンダリングエントリ/ _entry .html.erb(1726.9ms)
レンダリングエントリ/ _entry.html.erb(5.2ms)
レンダリングエントリ/ _entry.html.erb(5.3ms)
レンダリングエントリ/ _entry.html.erb(5.3ms)
レンダリングされたエントリ/ _entry.html.erb(5.9ms)
レンダリングされたエントリ/ _entry.html.erb(5.4ms)

誰かがこれを引き起こしている可能性のあるアイデアはありますか?

+2

時間がかかる部分レンダリングではないと思われます。通常、ローディング時間はActiveRecordに正比例します。私はあなたが奇妙なクエリを実行していると確信しています。私たちが部分的に何があったかを知っていれば、それは役に立ちます。 – sethvargo

+0

私は@ seth.vargoに同意します。また、減速の原因を見つけるためにRuby-prof(開発中)またはNewRelic RPM(生産中)を実行することをお勧めします。 –

+0

要求が終了した時点で、ActiveRecordで費やされた時間は、レンダリングに費やされた時間と比較して、わずかです。例:9898msで200 OKを完了しました(Views:6030.5ms | ActiveRecord:515.4ms | Sphinx:0.0ms)<=これは起き始めました。 –

答えて

3

小さいものの中で大きなものが1つ小さいようなものは、ガベージコレクションが起きているというサインです。それを解決するためにRailsエンタープライズ版に切り替えてください。私はまた、私は確信していませんが、ルビー1.9.2 +がこれをよりうまく処理していると思います。

関連する問題