2022年优化网站性能提高网站速度访问速度的条实践参照 .pdf
《2022年优化网站性能提高网站速度访问速度的条实践参照 .pdf》由会员分享,可在线阅读,更多相关《2022年优化网站性能提高网站速度访问速度的条实践参照 .pdf(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、优化网站性能提高网站速度访问速度的14 条实践相信互联网已经越来越成为人们生活中不可或缺的一部分。ajax ,flex 等等富客户端的应用使得人们越加“幸福”地体验着许多原先只能在C/S 实现的功能。比如 Google机会已经把最基本的office 应用都搬到了互联网上。当然便利的同时毫无疑问的也使页面的速度越来越慢。自己是做前端开发的,在性能方面,根据 yahoo 的调查,后台只占 5%,而前端高达 95% 之多,其中有 88% 的东西是可以优化的。以上是一张 web2.0 页面的生命周期图。工程师很形象地讲它分成了“怀孕,出生,毕业,结婚”四个阶段。如果在我们点击网页链接的时候能够意识到这
2、个过程而不是简单的请求 -响应的话,我们便可以挖掘出很多细节上可以提升性能的东西。今天听了淘宝小马哥的一个对yahoo 开发团队对 web 性能研究的一个讲座,感觉收获很大,想在blog 上做个分享。相信很多人都听过优化网站性能的14 条规则。更多的信息可见 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 12 页 - - - - - - - - - 1. 尽可能的减少HTTP 的请求数content 2. 使用 CDN (Content Delivery Network
3、)server 3. 添加 Expires 头(或者 Cache-control ) server 4. Gzip 组件server 5. 将 CSS 样式放在页面的上方css 6. 将脚本移动到底部(包括内联的)javascript 7. 避免使用CSS 中的 Expressions css 8. 将 JavaScript 和 CSS 独立成外部文件javascript css 9. 减少 DNS 查询content 10. 压缩 JavaScript 和 CSS (包括内联的 ) javascript css 11. 避免重定向server 12. 移除重复的脚本javascript 13
4、. 配置实体标签( ETags)css 14. 使 AJAX 缓存在 firefox下有一个插件 yslow ,集成在 firebug中,你可以用它很方便地来看看自己的网站在这几个方面的表现。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 12 页 - - - - - - - - - 这是对用 yslow 对我的网站西风坊测评的结果,很遗憾,只有51 分。呵呵。中国各大网站的分值都不高, 刚测了一下,新浪和网易都是31 分。然后 yahoo(美国)的分值确实 97 分!可
5、见 yahoo 在这方面作出的努力。从他们总结的这14条规则,已经现在又新增加的20 个点来看,有很多细节我们真得是怎么都不会去想,有些做法甚至是有些“变态”了。第一条、尽可能的减少HTTP 的请求数(Make Fewer HTTP Requests )http 请求是要开销的,想办法减少请求数自然可以提高网页速度。常用的方法,合并 css,js(将一个页面中的css 和 js 文件分别合并)以及Image maps和css sprites 等。当然或许将 css,js 文件拆分多个是因为css 结构,共用等方面的考虑。阿里巴巴中文站当时的做法是开发时依然分开开发,然后在后台对js,css 进
6、行合并,这样对于浏览器来说依然是一个请求,但是开发时仍然能还原成多个,方便管理和重复引用。yahoo 甚至建议将首页的css 和 js 直接写在页面文件里面, 而不是外部引用。 因为首页的访问量太大了, 这么做也可以减少两个请求数。而事实上国内的很多门户都是这么做的。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 12 页 - - - - - - - - - 而 css sprites 是指只用将页面上的背景图合并成一张,然后通过css 的background-posit
7、ion属性定义不过的值来取他的背景。淘宝和阿里巴巴中文站目前都是这样做的。有兴趣的可以看下淘宝和阿里巴巴的背景图。http:/ 这是个工具网站,它可以自动将你上传的图片合并并给出对应的 background-position坐标。并将结果以 png 和 gif 的格式输出。第二条、使用 CDN (内容分发网络) : Use a Content Delivery Network 说实话,对于 CDN 这一块自己并不是很了解, 简单地讲,通过在现有的 Internet中增加一层新的网络架构, 将网站的内容发布到最接近用户的cache 服务器内,通过 DNS 负载均衡的技术, 判断用户来源就近访问c
8、ache 服务器取得所需的内容, 杭州的用户访问近杭州服务器上的内容,北京的访问近北京服务器上的内容。这样可以有效减少数据在网络上传输的时间,提高速度。更详细地内容大家可以参考百度百科上对于CDN 的解释。Yahoo! 把静态内容分布到CDN 减少了用户影响时间 20% 或更多。CDN 技术示意图:名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 12 页 - - - - - - - - - CDN 组网示意图:第三条、添加 Expire/Cache-Control 头:A
9、dd an Expires Header 现在越来越多的图片,脚本, css,flash 被嵌入到页面中,当我们访问他们的时候势必会做许多次的http 请求。其实我们可以通过设置Expires header 来缓存这些文件。Expire 其实就是通过 header 报文来指定特定类型的文件在览器中的缓存时间。大多数的图片,flash 在发布后都是不需要经常修改的,做了缓存以后这样浏览器以后就不需要再从服务器下载这些文件而是而直接从缓存中读名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第
10、 5 页,共 12 页 - - - - - - - - - 取,这样再次访问页面的速度会大大加快。一个典型的HTTP 1.1 协议返回的头信息:HTTP/1.1 200 OK Date: Fri, 30 Oct 1998 13:19:41 GMT Server: Apache/1.3.3 (Unix) Cache-Control: max-age=3600, must-revalidate Expires: Fri, 30 Oct 1998 14:19:41 GMT Last-Modified: Mon, 29 Jun 1998 02:28:12 GMT ETag: “3e86-410-359
11、6fbbc”Content-Length: 1040 Content-Type: text/html 其中通过服务器端脚本设置Cache-Control和 Expires 可以完成。如,在 php 中设置 30 天后过期: 也可以通过配置服务器本身完成,这些偶就不是很清楚了, 呵呵。想了解跟多的朋友可以参考 http:/www.web- 据我了解,目前阿里巴巴中文站的Expires 过期时间是 30 天。不过期间也有过问题,特别是对于脚本过期时间的设置还是应该仔细考虑下,不然相应的脚本功名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - -
12、 - 名师精心整理 - - - - - - - 第 6 页,共 12 页 - - - - - - - - - 能更新后客户端可能要过很长一段时间才能“感知”到这样的变化。以前做suggest项目 的时候就遇到过这个问题。所以,哪些应该缓存,哪些不该缓存还是应该仔细斟酌一番。第四条、启用 Gzip 压缩: Gzip Components Gzip 的思想就是把文件先在服务器端进行压缩,然后再传输。这样可以显著减少文件传输的大小。 传输完毕后浏览器会重新对压缩过的内容进行解压缩,并执行。目前的浏览器都能“良好”地支持gzip 。不仅浏览器可以识别,而且各大“爬虫”也同样可以识别,各位seoer 可
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年优化网站性能提高网站速度访问速度的条实践参照 2022 优化 网站 性能 提高 速度 访问 实践 参照
限制150内