開発からステージングに移行したとき、JavaScriptとスタイルシートが単一のファイルにロールアップされたときの動作がどのように変化するかに悩まされました。
たとえば、次のように、保守性のために一連のスタイルシートをモジュール式で小さく保とうとしています。
<%= stylesheet_link_tag "reset-fonts-grid.css", "typography.css", "layout.css", "cms.css", "cms.about.css", "cms.legal.css", "comments.css", "user_generated_content.css", "overlay.css", "login_page.css", "flag_for_admin.css", 'patch.css', 'nag_guide.css', :cache => "cache/all" %>
httpリクエストを数えるよりもデバッグに関心がある場合、開発では問題なく機能します。
しかし、本番環境に移動するか、以下のようにconfig / environment / development.rbでキャッシュをオンに設定するとすぐに、レイアウトが壊れます。
config.action_controller.perform_caching = false
ここで何が起こっているのでしょうか。また、連結ファイルがこのような一連の小さなリクエストとは異なる動作をするのはなぜですか。また、これを修正するにはどうすればよいですか。
余談ですが、ファイルサイズと比較して、httpリクエストの数は実際にページ上でどの程度の違いがありますか?