如何解决极慢的rake资产:在heroku上预编译?

时间:2014-03-13 11:10:00

标签: ruby-on-rails heroku assets

rake assets:precompile本地快速(<10秒),当我在heroku上运行时:

heroku run time rake assets:precompile --trace(先清洁)

在部署到heroku期间,大约需要10分钟。

如何找出问题所在并解决问题?

作为参考,我尝试了所有这些:

我们使用的是Rails 3.2.13,Ruby 2.0.0p353

1 个答案:

答案 0 :(得分:0)

您应该尝试将资产存储在memcached / redis数据库中,这样您只需编译已部署的每个版本中已更改的资源:

使用Heroku(http://addons.heroku.com/)设置redis / memcached数据库或使用已有的数据库

配置资产缓存商店(通过config/environments/production.rb):

config.assets.cache_store = [ :redis_store,  {
  url: ENV['REDIS_URL'] || 'redis://127.0.0.1/0',
  namespace: 'assets'
}]

我们已经能够将资产预编译时间降低&lt;从几分钟开始使用这种方法30秒。