15

私のアプリの各ページリクエストは、約30個のアセット(JavaScriptと画像)を取得します。これは、ベンダー/とアプリ/の両方のサードパーティのものです。もちろん、すべてのJavaScriptは本番環境で結合および縮小されるため、そこでは問題ありませんが、開発では非常に低速です。ページをロードするのに8秒のように、悪化するだけです。これは正常ですか、それをスピードアップするために何ができるでしょうか?

アセット/からパブリック/に画像を移動してみましたが、同じようにゆっくりと機能します。1秒間に約3〜4ファイル。

これは、WEBrickとUnicornの両方を備えた高速のMacbookProで発生しています。

4

5 に答える 5

33

アセットのデバッグをオフにすると、速度が少し向上します。

#development.rb
config.assets.debug = false
于 2012-05-15T01:47:07.277 に答える
9

ほとんどの場合、問題は、Railsが各アセットリクエストですべてのクラスをリロードすることです。このgem:https ://github.com/wavii/rails-dev-tweaksは、Railsの自動ロードルールを微調整することで問題を修正します。

于 2012-05-16T14:25:13.940 に答える
1

私は個人的にシンサーバーを使用しています。また、開発環境の速度が低下していました(±12秒かかりました)。それを追加してGemfileを実行します。

group :development do
  gem "thin"
end

バンドルして実行する:

thin start

アセットをプリコンパイルする前に、ロード時間を+-5に短縮しました(いくつかの構成とコードのリファクタリングを使用)。それが役に立てば幸い

ここに画像の説明を入力してください

-ソースシンウェブサイト

于 2012-05-13T09:12:36.620 に答える
0

Railsは開発のたびにアセットをコンパイルする必要があると思いますが、本番環境では、初めての場合を除いて、開発が遅くなることはありません。

于 2012-05-17T01:55:44.743 に答える
0

ガードとそれに関連するプラグインをチェックアウトして、ファイルシステムでアセットを編集するときにバックグラウンドでアセットをプリコンパイルできます。

于 2012-05-15T08:22:26.207 に答える