我有一个简单的基于 ASP.Net MVC3 的网络应用程序。我最近一直在做一些性能调整。我在 Mozilla 中使用 Firebug 来查看资源负载大小和时间。后来,我使用 YSlow 推导出一些可能的优化。
我想将重点缩小到“捆绑和缩小”的一般优化概念,我们将 js 和 css缩小并捆绑成单个组合的 js 和 css。根据 YSlow,它节省了额外的服务器请求以及一些带宽/时间。但是,就我而言,它是矛盾的!我正在使用SquishIt lib。
这是我的统计数据(请查看附件图片)
Old Login page: Requests(10), Size(434), Load Time in seconds(29), YSlow grade C(78)
New Login page: Requests(6), Size(414), Load Time in seconds(42), YSlow grade B(88)
旧的原始页面 - 这是新的优化页面 -
理想情况下,它必须反转!但看起来组合的 js 文件占用了更多时间。我已经放慢了我的带宽以获得更准确的差异,并且我已经在非缓存中测试了它(也做了 Ctrl+F5),以确保两个页面都有公平的机会。他们使用相同的设置在同一个服务器上。
注意:请忽略图像中的最后一个图像重新加载 - 我做了刷新。我在登录页面上预加载了一些额外的 jQuery 库,以便后续页面获得缓存资源。您可以忽略这些事情,但请让我知道这是可能的还是我犯了一些错误?
关于捆绑和缩小的另一个查询- 如果我将 CDN 引用用于我的资源(不能捆绑),我认为它不适用。在那种情况下,什么是首选 - CDN 引用或捆绑?