时间: 2009-09-18 / 分类: WEB后端编程 - 开发与实践 / 浏览次数: / 0 个评论 发表评论
如何让IIS WEB服务器的性能最优化
WEB前端开发中的一些编程风格和书...
CSS Hack浏览器兼容IE6+IE7+IE8+IE9+FF
黄金分割与摄影构图
项目前端开发的架构

 (互联网信息服务器Internet Information Server)始终是Windows服务器下的架设WEB网站的第一首选,虽然也时常用apache,但是一到Windows服务器,始终避免不了使用IIS服务器,就算不给自己架设,也会给人家架设,作为生产服务器架设的时候就需要做某些方面的优化了。

  1、减少HTTP请求数量

  这主要是修改网站代码,减少外部图片、CSS、JS等文件数量,手动合并多个CSS/JavaScript文件。IIS那里不用设置。

  2、使用CDN

  对于小网站来说,这个就免了吧。当然有钱人可以试试,可以从技术上解决用户访问网站响应速度慢的问题。

  3、启用内容过期

  对于静态文件启用内容过期可以提高访问性能。首先网站的目录要划分合理,图片、CSS、JavaScript均放在单独目录下,然后在IIS中选择目录,点属性-HTTP头,启用内容过期,可以选择30天后过去,这样,用户浏览器将比较当前日期和截止日期,以便决定是显示缓存页还是从服务器请求更新的页,由于图片、CSS、JS通常变化较少,因此基本上都从本地缓存读取,从而加快显示速度。

111

  4、启用Gzip压缩

  HTTP压缩是在Web服务器和浏览器间传输压缩文本内容的方法。HTTP压缩采用通用的压缩算法如Gzip等压缩HTML、JavaScript或 CSS文件。压缩的最大好处就是降低了网络传输的数据量,从而提高客户端浏览器的访问速度。

  使用方法是,右击“网站”->“属性”,选择“服务”。在“HTTP压缩”框中选中“压缩静态文件”,“临时目录”建议单独设置另一个盘的目录下。

  之后,IIS管理器中,右击“Web服务扩展”->“增加一个新的Web服务扩展”,在“扩展名”中输入“HTTPCompression”,添加“要求的文件”为C:\WINDOWS\system32\inetsrv\gzip.dll,其中Windows系统目录根据您的安装可能有所不同,选中“设置扩展状态为允许”。

222

333

  最后,使用文本编辑器打开C:\Windows\System32\inetsrv\MetaBase.xml,在HcFileExtensions中增加需要压缩的静态文件后缀名,默认为HTML和TXT文件,建议再添加上js、css等,不要添加图片或ZIP等已经被压缩的文件。

  5、将样式文件放在头部

  这是基本的HTML代码风格,将所有的CSS文件都放在HTML页面的头部。

  6、将脚本文件放在尾部

  这也是基本的HTML代码风格,将所有的JavaScript文件都放在HTML页面的尾部。

  7、避免CSS表达式

  这点很简单,因为大多数人从来不用CSS表达式。

  8、使用外部的JavaScript和CSS

  将所有的JavaScript和CSS都做成外部文件的形式进行引用,这主要是为了让这些文件可以被浏览器缓存起来,参见第三点的介绍。

  9、减少DNS查询

  域名的DNS查询会带来额外的访问开销,减少页面内文件的主机域名数量,一个页面的主机域名保持在2-4个以内,这样就不会降低页面的装入速度。

  10、压缩JavaScript文件

  压缩脚本文件,删除不必要的字符,可以改善加载时间,目前有很多JavaScript文件的压缩工具,我这里有一个GUI界面的JS压缩工具供下载。

  11、避免重定向

  网页的重定向会带来额外的运行开销,因此要避免页面进行重定向跳转操作。

  12、删除重复脚本

  一个页面两次包含同一个JavaScript文件会影响加载的性能,因此需要将重复的脚本文件删除。

  13、配置ETag

  这是一个令人迷惑的问题。理论上说将服务器的ETag删除会提高HTTP请求的性能,但是按照微软官方提供的修改方法配置IIS 6.0,并没有实际效果,最终我使用了一个第三方的DLL文件,以ISAPI的方式实现了删除ETag的功能。

  经过上面这些网站前端重构和WEB服务器的配置修改,对于最终用户来说,也会明显感受到访问网站速度变快了很多,网站的浏览体验得到了较好的提升。

  参考书籍:高性能网站建设指南 —— 电子工业出版社出版

      站点地图 | 关于我 | 返回顶部
    Copyright © 2001-2013 { amiku.cn | zhangshunjin.com }. Powered by 

    阿米酷

    张顺金


    浙ICP备11002820号-1