有这么一个前端性能优化上奇怪的问题……

2012-10-29 02:46:19 +08:00
 feiandxs
www.abc.com
页面包含大量www.abc.com/images/xxx.jpg之类的图片引用
因为架构设计的原因,现在在计划的改动里,只有改成static.abc.com/images/xxx.jpg这样才能最好的实现性能调整的目标。总之,需要这么做。
然后这个奇葩的加密程序,无法进行任何修改。
页面上仍然会是大量的img src=www///jpg
在浏览器访问这样页面的时候,这些www///jpg会301到static///jpg

是的,在一个www.abc.com的页面打开的过程中,浏览器要请求大量的www.abc.com///jpg然后301到static.abc.com///jpg
当然,在static这个域上,各种缓存都可以做的顺顺当当。在www这个域上,只给html有缓存,jpg文件类型就不带什么缓存了,301吧。

现在的问题就是,大量的带宽也许可以节省,却尴尬的出现了大量的301请求。
我想来想去,觉得www.abc.com///html可以有304,无碍。static///jpg有304,无碍,但打开abc.com///html后,其中引用的abc.com///jpg跳转的这个301请求却是无论如何绕不开的。

我现在的困惑就是,我刷新一个页面,它是304在我本地的,它其中包含的这些301的请求,而301的目标又是304在我本地的。301本身这个状态是无法缓存的。现在这样一个奇葩的过程中,到底会发生什么事呢。。。到底对性能上有什么影响呢。。。
2679 次点击
所在节点    问与答
2 条回复
honk
2012-10-29 04:14:56 +08:00
缓存和请求数是前端性能优化中最重要的两个指标,你的301无疑加倍了请求数。
很好奇什么样的奇葩程序不让对输出做任何修改,实在不行,看看被引用的js 能不能改,或许可以做点弥补
feiandxs
2012-10-29 04:29:16 +08:00
@honk 因为代码是一堆加密的。。。 我也觉得这个301的方式极不靠谱。已然自己否决自己了。 增加的一点点好处根本抵不上增加的requests
现在换了个方式,试图在nginx上合并static files的请求。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/51142

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX