2011-11-10 4 views
3

Rails 3.1は、開発が非常に遅いページを読み込みます。一度に1つずつ、パイプラインを通じて処理していますが、時間がかかりすぎます。開発中のアセットを直接配信する(アセットパイプラインなし)?

アセットをプリコンパイルすることはできますか(静的なファイルなので、今はテストしていません)、Railsにサービスを提供する責任はありませんか?物事をより速くするでしょうか?

更新:解決策を得ました。
Richard Hulseには、この質問に対する正しい答えがあります。 rake assets:precompileは、アセットパイプラインなしで直接配信されるようにアセットを事前作成します。

しかし、Frexuzのは、私が持っていた低速読み込みの問題を解決します。 Rails-dev-tweaks gemをロードすると、ページの読み込みが大幅に高速化されます。

+0

'config/environments/development.rb'ファイルのアセットの設定をあなたの質問に追加します。これは、遅さの原因となるはずです。 – mliebelt

答えて

6

私は同じ問題がありました!アセットのためにページを読み込むのに2〜4秒かかることがあります。

はこちら(GEM)を見てみましょう:

Rails 3.1 is very slow in development-mode because of assets, what to do?は、これは、通常、資産パイプラインを使用して、(サーバーコンソールは、資産ごとに1ミリ秒を言う)はほぼ瞬時に資産を提供しました。

3

はい。

(3.1.1の)プリコンパイル・タスクを実行することができます。それだけで動作します。プリコンパイル・タスクは開発モードで必要なものであり、指紋のない資産も提供します。 (指紋はdevモードでは追加されません)。

ソースコントロールにこれらをコミットしないように注意してください。

さらに懸念事項は、遅さです。私はマニフェストに4つのスタイルシートと15のjavascriptファイルを持っています。最初のリクエストでは少し遅いです。

アセットにアクセスするとログには何が表示されますか?最初のヒット時にそれらがコンパイルされているのを見ることができるはずです。

また、devの設定はアセットパイプラインガイドの設定と一致していますか?あなたがたくさんのファイルを持つdevモードで圧縮していたなら、これは遅さの原因かもしれません。

関連する問題