LoginSignup
51
52

More than 5 years have passed since last update.

assets:precompile の速度を改善する

Posted at

注: この投稿は Rails3.2.x を対象としています

assets:precompile 遅いですよね。

特にデプロイ時に気になることが多いかと思います。

capfile で頑張るのもいいですが、
turbo-sprockets-rails3 という gem を使うとスマートに解決します。

使い方

使い方は簡単。Gemfile に記述するだけ。

Gemfile
group :assets do
  ...
  gem 'turbo-sprockets-rails3'
end

確認

bundle
rake assets:precompile

もう一度

rake assets:precompile

早くなりましたか?

動作について①

assets:precompile 時に fingerprint を生成、
以降変更がなければスキップしてます。

Capistrano

Capistrano にも対応しています。capfile を変更する必要はなく、
普通に cap deploy で意図した通りに動いてくれています。

動作について②

Capistrano を利用したデプロイでは、
生成物を「デプロイルートディレクトリ/shared/assets」に配置し、
public/assets から symlink を貼って対応しています。

Rails4

Rails4 では rails 用に最適化された sprockets-rails を採用することによって
assets:precompile の速度が大幅に向上するようです。

参考

51
52
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
51
52