将所有js文件捆绑在一个捆绑包中,并与css文件捆绑在一起

时间:2014-02-25 20:28:02

标签: asp.net-mvc model-view-controller bundle asp.net-mvc-5

据我所知,捆绑的一个优点是减少了对服务器的请求数量。那么为什么不将所有js文件捆绑成一个,将所有cs文件捆绑成一个?这种方法有什么缺点吗?

3 个答案:

答案 0 :(得分:2)

例如,您有2页和3个javascripts

javascript 1和2各为1kb

javascript 3是1mb

第1页只需要javascript 1和javascript 2

第2页只需要javascript 1和javascript 3

你现在可能已经看到了缺点

答案 1 :(得分:1)

这种方法的主要缺点是浏览器必须先下载整个javascript文件才能开始执行任何javascript文件。最有可能会减慢速度,但有一些框架/工具可以做到优化。它可以帮助一堆小文件来克服http开销。

此外,如果更改捆绑包中的任何文件,则必须使缓存无效,并为客户端提供全新(大)捆绑包以便再次下载和缓存。

然而,正如this link explains一样,当http 2.0成为主流时,这些方法可能并不有用。并且似乎存在带宽阈值,在速度与延迟发挥作用的情况下收益递减。

答案 2 :(得分:0)

如果您只有一个文件,则无法利用浏览器并行/并发下载。

相关问题