2011年11月11日星期五

[firefox] 提速!


firefox 现在越来越牛了,不论是版本号,还是内存的占用,还是 js 执行速度,还是页面加载速度,都走在了最前列。不过人总是不知足呀,所以我总在想:还有没有提升空间呢?

日前看新闻称 chrome 17 将支持 HTTP pipelining 特性,这功能 firefox 不是早就有了吗?chrome 不要炒冷饭当卖点哦。下面我们来开启这个功能,体验极速快感吧。

HTTP Pipelining
神马是 http pipelining?



简单地说,firefox 打开一个网页,首先下载页面源码,然后解析,再根据页面源码依次请求服务器获取相应的 js,css,图片,视频,音频等资源。

普通方式是发出一次请求,然后接收相应信息,再发出下一次请求,直到所有信息获取完毕,再渲染出来——这就是我们看到的网页。如果页面很复杂,或者服务器速度过慢,页面加载速度可想而知。http pipelining 是把一次一次的请求批量化、量产化,一次性发出n条请求,缩短和服务器的通信时间,提高载入速度。
首先打开火狐,地址栏输入 about:config,进入设置页面。然后搜索 pipelining:
1、network.http.pipelining —— 双击改为 true,启用此特性;
2、network.http.pipelining.maxrequests —— 双击修改数值,扩大一倍即可。此数值是批量提交请求的数目;
3、network.http.pipelining.ssl —— ssl 加密情况下依然启用此特性;
4、network.http.proxy.pipelining —— 使用代理情况下依然启用此特性。
完成以上操作后,直接关闭 about:config 就可以啦,它会自动保存并应用配置。现在重新打开网页试试,只要服务器支持这个功能,会感觉页面加载速度的确有一定的提升哦 

继续优化
1、搜索 network.http.max-connections 和 network.http.max-connections-per-serve,均扩大一倍(按需求)。他们的作用是提高最大连接数上限。
2、右键单击空白处,选择 New(新建)–> Integer (整数)”。将它命名为”nglayout.initialpaint.delay”,值设为 “0″。它的作用是无延迟显示已经下载的数据,视觉感官页面加载速度会提升。(参数解释[mozillazine.org])
3、(windows only) 最小化时减少内存占用。新建bollon型,命名为”config.trim_on_minimize“,设定为 true 即可。
4、调节页面ui响应时间,最大加载时限等其他的方式如: 《Firefox 加速技巧》 感觉太鬼畜了…… ,修改太多反而会适得其反。建议读者有选择性的适度调节。
5、删除过期的历史记录和缓存。如果您的火狐实在很慢,可以移除配置文件(请注意备份!),让火狐涅槃。
          linux的配置文件在: ~/.Mozilla
          windows的配置文件在:%APPDATA%\Mozilla


优化的误区


cache 和 history 并不会太拖累 firefox 的速度,倒是一些插件会减慢页面加载速度,重量级插件更会导致火狐的内存溢出(如 firebug,web developer)。如果可以,把无用的插件删除;较少用到的插件暂时禁用,使用时再启用;可以用greasemonkey 脚本代替的插件,就用greasemonkey 代替,高速且易于修改。

一些只是 eye candy 的插件,删除就好啦,例如 cooliris,iReader,flagfox,占内存且拖慢速度。

对于 ipv6,我的态度是热烈拥抱,ipv4 虽然坚挺,但是 ipv6 功能颇多(-翻-越-长-城-,-走-向-世-界-),而且教育网的 ipv6 不算流量,所以不建议禁用有关 ipv6 的设置。不然日后出现问题更难以排错。

小内存的电脑,建议使用比较小的页面缓存;不使用,或者少使用插件;使用默认的皮肤/主题,速度才不会太受到影响。

原文地址:https://www.deleak.com/blog/2011/10/24/firefox-spdy/











没有评论:

发表评论