web前端:高性能网站建设的14个原则

    作者:mdyang 更新于: 2020-12-04 13:19:49

    Web开发

      网站建设是指使用标识语言(markuplanguage),通过一系列设计、建模、和执行的过程将电子格式的信息通过互联网传输,最终以图形用户界面(GUI)的形式被用户所浏览。简单来说,网页设计的目的就是产生网站。简单的信息如文字,图片(GIF,JPEG,PNG)和表格,都可以通过使超文件标示语言、可扩展超文本标记语言等标示语言放置到网站页面上。而更复杂的信息如矢量图形、动画、视频、声频等多媒体档案则需要插件程序来运行,同样地它们亦需要标示语言移植在网站内。

      摘要:本文是作者阅读《高性能网站建设指南》后的对高性能网站建设的总结,共计14点。

      今日大致浏览了一下《HighPerformanceWebSites》。本书的中文版是《高性能网站建设指南》。本书另有对其中个别问题深入探究的进阶篇《EvenFasterWebSites》,中译《高性能网站建设进阶指南》。

      这本书中给出了14条网站性能提升的原则,每个原则独立成章,配有示例。这些原则大多数都非常实用,适合站点架构师、前端工程师。其中对于前端工程师的意义更大一些。

      这次看的是原版。我对于Web开发较缺乏实践经验,加之看得匆忙,因此可能存在遗漏、表述不当之处,希望广大网友不吝指正。

      原则1减少HTTP请求数

      构造请求、等待响应需要时间,因此请求数量越少越好。减少请求的总体思路就是合并资源,减少显示一个页面需要的文件数。

      1.ImageMap

      通过设置标签的usemap属性与使用标签可以在一幅图片上切分出多个区域,指向不同的链接。比起使用多幅图片分别构造链接减少了请求数。

      2.CSSSprite(CSS贴图整合/贴图拼合/贴图定位)

      通过设置元素的background-position样式做到。一般用于界面图标。典型的可以参考TinyMCE编辑器上方的那些小按钮。多个小图实质是从一个统一的大图通过不同的偏移量裁剪而来,这样加载界面上的众多按钮实际上只要请求一次(请求大图一次),从而减少HTTP请求数。

      3.InlineImage(内联图片)

      在的src中不指定外部图片文件的URL,而是直接将图片信息放入。例如src=”data:image/gif;base64,R0lGODlhDAAMAL...”某些特殊情况下有用(例如一个不大的图片仅在当前页面用到)。

      原则2利用多线路CDN

      为你的站点提供多种线路(例如国内电信、联通、移动)、多个地理位置(北方、南方、西部)的访问,使得所有用户都能够快速访问。

      原则3利用HTTPCache

      给不频繁更新的资源(例如静态图)加较长的Expires头信息,这些资源一经缓存,未来很长时间都可以不再重复传输了。

      原则4使用Gzip压缩

      使用Gzip压缩HTTP报文,减小体积,减少传输时间。

      原则5将样式表置于页面前部

      先加载样式表,这样页面渲染得以较早开始,给用户页面加载较快的感觉。

      原则6将脚本置于页面尾部

      原因同5,先处理页面显示,页面渲染较早完成,而脚本逻辑稍后执行,这样给用户页面加载较快的感觉。

      原则7避免使用CSS表达式

      过于复杂的Javascript脚本逻辑、DOM查找、选择操作将会降低页面处理效率。

      原则8将JavaScript与CSS作为外联资源

      这似乎与原则1中的合并思想相悖,但其实不然:考虑每个页面都引入了一个公共的JavaScript资源(例如jQuery或是ExtJS这样的JavaScript库),单就一个页面的表现来看,内联(即将JavaScript嵌入HTML)页面将比外联(使用

未登录