While some of these other answers are certainly valid, we have a slightly different / additional reason.
We have a process that, at the first request, determines what static content is required for any page. In the background, this static content (js, css) is combined and converted into a single file (1 for JS, 1 for CSS), and then all future requests are served by one file instead of several.
Although we could theoretically exclude files that can be submitted to a CDN and use a CDN for them, itโs actually easier (because we really need to add code to handle the exceptions), and in some cases faster than using a CDN.
source share