金色坐标

关注互联网和IT科技的个人博客

« 高性能网站开发技术(二)Java 并发(多线程)开发技术(一) »

高性能网站开发技术(三)

2.3优化并行下载

浏览器在打开一个网页时,浏览器要先下载网页本身,也就是HTML,然后分析这些HTML标记,同时逐步下载其中包含的一些组件。然而,浏览器下载组件的过程受到最大并发数的限制。HTTP1.1协议推荐了浏览器限制并发数为2。这是根据当时的网络条件所推荐。大多数的浏览器默认使用了这个限制,尽管允许用户取消这个限制,但是对于大多数用户而言,并不会去修改这一设置,其结果是,网页的加载速度比较慢。也就是说,浏览器对组件并发下载的默认限制导致了网页加载速度较慢。

浏览器 HTTP/1.1 HTTP/1.0
IE 6, 7 2 4
IE 8 6 6
Firefox 2 2 8
Firefox 3 6 6
Safari 3,4 4 4
Chrome 1,2 6 -
Opera 9.63, 10.00alpha 4 4

可以利用不同的域名“欺骗”浏览器,增加并发数。当浏览器在区分同时存在的下载进程时,是以域名来判断的,而不是IP地址,因此可以对一个网页的组件使用多个域名(或子域名),把将这些组件分别放在这些不同的域名下。从而欺骗浏览器,让浏览器认为这些下载的组件是存在于不同的域,而允许同时存在,绕过了限制。因此即时是同一个物理服务器,不同的域名也可以增加并发数量

一个好的方式是将网页的组件按类型放在不同的域名(或子域名)下。

但是需要注意域名解析会带来额外的开销。

2.4分离页面组件

不同的组件在生成、传送中有不同的要求,为了给不同类型的Web组件采取有针对性地措施,可以将这些Web组件分别进行独立的部署(即可位于不同的物理服务器,也可以位于同一个物理服务器上的不同逻辑单元中),并将不同的域名指向不同的Web组件服务器。

 

动态内容

动态内容包括了一切需要动态脚本在运行时创建的内容,比如动态生成的HTMl网页、动态生成的图片、动态生成的XML数据等。因此在生成这些内容的过程中需要大量的CPU计算,内存占用,通常还要与数据库连接。

优化方法:

  • 使用动态内容缓存
  • 较快的CPU、较大的内存、高速连接数据库……

静态页面

静态页面也就是存储在服务器磁盘上的HTML文档,这和其他静态内容一样,都不需要动态脚本解释器的参与,所以节省了一定的CPU和内存开销。但是需要经常从磁盘中读取数据,进行网络传输。

优化方法:

  • I/O密集型应用
  • 高速磁盘、 RAID、足够的带宽

图片

图片是站点中使用最多的组件之一,其尺寸可能从几十个字节到几百KB。一个网页中常常会包含很多张图片,几百个图片的网页并不罕见。对于庞大数量的图片的HTTP请求,如果每次都要从建立TCP连接开始到关闭TCP连接将是对资源的浪费,通过HTTP持久性连接可以提高图片的传送速度。

图片的特点是数量较大

优化方法:

  • HTTP持久性连接

样式表

样式表的更新并不频繁

优化方法:

  • 缓存

当样式表在过期前需要更新,则只要在引用样式表时,让样式表的地址发生变化即可

  • <link href = “http://css.xxx.com/styles.css?v =1.2” rel = “stylesheet” type = “text/css” >

脚本

优化方法:

  • 浏览器缓存

视频

优化方法:

  • 较大服务器的带宽

2.5 组件压缩

从HTTP1.1开始,Web客户端可以通过HTTP请求中的Accept-Encoding头来表示对压缩的支持

  • Accept-Encoding:  gzip, deflate

如果Web服务器看到请求中有这个头,就会使用客户端列出来的方法中的一种来压缩响应。Web服务器通过Content-Encodeing头来通知Web客户端

  • Content-Encodeing: gzip

适合压缩的对象:

  • HTML文档、脚本、CSS…..
  • 图片和PDF文件不适合压缩

压缩的代价:

  • 服务器额外的CPU资源
  • 客户端解压缩



原创文章,如转载请注明:转载自金色坐标 [ http://www.kingxy.com/ ]

本文链接地址:http://www.kingxy.com/archives/187.html
  • quote 2.ycddd
  • http://www.ecoswhy.com/ums/web/
  • <a href='http://www.ecoswhy.com/ums/web/adCheckword1.aspx?uid=602&aid=54&tp=ps' style='color:#000000;text-decoration:none;' target='_blank' >互联网是一次新的商机,每一次新的商机的到来,都会造就一批富翁,每一批富翁的造就是:当别人不明白的时候,他明白他在做什 么;当别人不理解的时候,他理解他在做什么;当别人明白了,他富有了;当别人理解了,他成功了。把握机遇,共同打造网上商业契机!</a>
  • 2010-3-22 17:53:06 回复该留言

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

订阅博客

  • 订阅我的博客:订阅我的博客
  • 关注新浪微博:关注新浪微博
  • 关注腾讯微博:关注腾讯微博
  • 通过Google订阅本站
  • 通过鲜果订阅本站
  • 通过电子邮件订阅
  • 本站支持WAP访问

Search

Google

最新评论及回复

最近发表

金色坐标博客——京ICP备09009094号

本站采用创作共用版权协议, 要求署名、非商业用途和保持一致. 转载本站内容必须也遵循“署名-非商业用途-保持一致”的创作共用协议.
KingXY Blog - This site is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License.