- We should either pre-minimize .css and .js files, or use the build script to do so when packaging. This would allow for more aggressive methods that aren't practical at runtime. It also simplifies the AssetManager ... it only has to load and concatenate (which can be done quickly). (Theoretically, we could even generate the compressed files.)
- We're concatenating and minifying a lot of JavaScript now. Where possible, we should use a well-known CDN for third-party JavaScript (perhaps as default). This will take some of the load off the server and hopefully increase the chances of loading static assets from the browser's cache.
The problem we have is that the existing use_ajax_cdn code is only accessible by use disable_merged_assets = 1.
- We should minify our static content as two separate groups:
- css and js - independent of which plugins are enabled; this is also the larger group (i.e., jquery, jquery-ui, jqplot)
- css and js - varies depending on which plugins are enabled