Rails assets:precompile 在 i5 上面用了 87s

linjunhalida · 2012年04月09日 · 最后由 caryl 回复于 2012年04月11日 · 2489 次阅读
$ time rake assets:precompile
rake assets:precompile  87.80s user 2.35s system 99% cpu 1:30.39 total

真的是超级慢。。

编译过程本身是非常慢的, (因为一堆的 sass/coffee) 我希望能够把中间没有修改的部分缓存下来,大家知道如何才能做到呢?

大牛~ 昨天昨天搞了个 octopress, 里边有个方法 rake generate. 此方法可以先检查 sass 等样式是否改变,然后再生成内容. 我刚看了以下。发现: system "compass compile --css-dir #{source_dir}/stylesheets" may that will help.

不就 deploy 的时候在服务器上跑一次吗?慢点也没关系吧

我也希望能快点,在低端 VPS 部署的时候比较痛苦。。

同痛苦的 飘过

这里有个可以跳过 precompile 的

namespace :deploy do
     namespace :assets do
       task :precompile, :roles => :web, :except => { :no_release => true } do
         from = source.next_revision(current_revision)
         if capture("cd #{latest_release} && #{source.local.log(from)} vendor/assets/ app/assets/ | wc -l").to_i > 0
           run %Q{cd #{latest_release} && #{rake} RAILS_ENV=#{rails_env} #{asset_env} assets:precompile}
         else
           logger.info "Skipping asset pre-compilation because there were no asset changes"
         end
     end
   end
 end


适用于 capistrano 和 git

需要 登录 后方可回复, 如果你还没有账号请 注册新账号