在Rails生产中,config.assets.install=true,为什么不呢?
安装的默认Rails应用程序rails new
有config.assets.compile = false
在生产中。
做事情的最普通的方法就是跑rake assets:precompile
在部署应用程序之前,要确保编译了所有资产管道资产。
如果我设置config.assets.compile = true
在生产中?
我不需要跑precompile
更多。我相信第一次请求资产时,就会对其进行编译。这将是第一次对性能的影响(这意味着您通常需要在生产中使用js运行时才能做到这一点)。但除了这些缺点之外,在资产被懒散地汇编之后,我想所有对该资产的后续访问都将具有不性能命中,该应用程序的性能将是完全一样与预编译资产一样,在这个初始的第一次延迟编译之后。这是真的吗?
我遗漏了什么吗?任何其他不应设置的理由config.assets.compile = true
在生产中?如果我在生产中有一个JS运行时,并且愿意为第一访问资产,以换取不必运行precompile
这有道理吗?