Railsプロダクションではconfig.assets.compile = trueですが、なぜですか?
デフォルトではではインストールアプリRailsのrails new持つconfig.assets.compile = false生産を。 そして、物事を行う通常の方法はrake assets:precompile、アプリをデプロイする前に実行して、すべてのアセットパイプラインアセットが確実にコンパイルされるようにすることです。 ではconfig.assets.compile = true、本番環境に設定するとどうなりますか? precompileもう走る必要はない。私が信じるのは、アセットが初めてリクエストされたときに、コンパイルされることです。これは初めてのパフォーマンスヒットになります(これを行うには、通常、運用環境でjsランタイムが必要です)。しかし、これらの欠点を除いて、アセットがレイジーコンパイルされた後は、そのアセットへの以降のすべてのアクセスでパフォーマンスヒットは発生しないと思います。アプリのパフォーマンスは、この最初のヒットレイジーコンパイル後のプリコンパイル済みアセットとまったく同じになります。これは本当ですか? 何か足りないものはありますか?config.assets.compile = true本番環境に設定しないその他の理由はありますか?本番環境でJSランタイムを使用していて、実行する必要がない代わりに、アセットへの最初のアクセスでパフォーマンスが低下するというトレードオフを受け入れる意思がある場合precompile、これは理にかなっていますか?