| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 961 人关注过本帖
标题:如何减少网页的内存与CPU占用
只看楼主 加入收藏
huangyong
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:湖北武汉
等 级:版主
威 望:20
帖 子:603
专家分:7
注 册:2006-7-21
结帖率:66.67%
收藏
 问题点数:0 回复次数:1 
如何减少网页的内存与CPU占用
[bold]虽然这篇文章是转载的,但觉得大家还是可以看看,应该会有所帮助。[/bold]

  有的网页看起来并不大但打开会很卡,有的网页虽然很长但使用流畅,占用用户电脑的内存与CPU就影响这些。

  浏览器问题,有各自的浏览器处理内存问题会影响到,但几乎没办法控制得了,Windows上的:

  IE系列,刷新回收的量不大,但最小化会释放内存。

  Firefox2据说也会在最小化回收,可我从没见过最垃圾,用多少是多少,基本不回收。据说prototype的ajax还会引起内存一直增加。

  Opera最好。一直控制得很好。不存在什么问题。。

  Linux的内存分配机制与Win的不一样,有多少用多少,如果浏览器占光时说不定会干掉系统。

  页面问题,浏览器渲染页面会消耗内存和CPU,能减少一点就减少点。

结构上

  使用DocType,告诉浏览器你在用什么,html4也有DTD。也许Transitional更适合你

  如果使用的是XHTML并能保持良好结构的话,记得输出相应的MIME跟XML头1,可以减少浏览器的代码检查,保持结构的完整,不要让浏览器帮你补全代码。

  控制页面的文件大小,可以通过程序把为了看代码比较舒服的缩进去掉。2~3K也是大小。

  iframe会产生新的页面,其实有很多方式可以代替iframe

  引入的JS与CSS可以适当合并,同样背景图片也可以合并,甚至有人连Flash都合并

  给已知宽高的内容图片/Object加上宽度的属性可以减少页面的局部重渲染

表现上
  质量99跟70的jpg在大多数情况下只有文件有大小不一样。gif的也一样,特别是小图标,256色跟128色的差别是文件大小.
  flash动得太快吃CPU很大,控制每秒的帧数及动画的效果可以减少一些,如果把品质用中低显示会省很多资源,但这样却牺牲了效果。。quality属性 有时选择Autolow2 或者Autohigh会更适合,没必要一直low 或者best,
  flash使用矢量图会节省文件大小,但计算复杂的图形跟动画时花的是CPU。复杂的太多滤镜,则会占用大量内存,模糊滤镜有减少些3。
 
  IE的滤镜也是比较占用内存,同时也有兼容性问题。全屏的半透明很吃资源的。

  2*2的图片跟8*8的图片大小差不多,但是平铺背景2*2却占用大很多。

  gif动画同样有帧的概念,别把gif当成flash来玩就行。

行为上
  别为了使用一个$()引入整个pretotype或jQuery,它们有更多的作用。
  AJAX很帅。但是用xml会用上XML解析器,有人推荐用JSON,可是这样要eval数据,其实可以直接import已经是对象的script来用。只是要多传个对象名,或者把对象名写死,或者像flickr那样jsonFlickrApi({"xxx":"xxx"}),直接当函数用,挖哈哈。
  实现某些效果时能用visibility:hidden解决时就别用display:none来玩。

  在这里强调js变量要注全局跟局部等等的意义并不大,JS复杂的地方也不是一两句能说得清的,关注大家关注月影的正在出版的新书吧。^^

  其实这里有的内容有不少跟 如何快速的呈现我们的网页 相近,不过那篇是以处理服务端为主,但在很多时候,节省服务端资源消耗的同时也会节省客户端的资源消耗。

  再其实,这篇已经蹲在草稿箱里好久了,一直没有时间去整理。现在给的也不是完整的,因为没有完整,慢慢补充吧。
  产生问题:虽然会引起 浏览器的模式问题 ,但问题是可以解决滴。参考Serving up XHTML with the correct MIME type ,派送XML头浏览器不会容错显示,出现错误结构会导致整个页面无法显法。

  Autolow: 优先考虑速度,但是也会尽可能改善外观。 回放开始时,消除锯齿功能处于关闭状态。 如果 Flash Player 检测到处理器可以处理消除锯齿功能,就会打开该功能。

  Autohigh:开始时回放速度和外观两者并重,必要时会牺牲外观来保证回放速度。 回放开始时,消除锯齿功能处于打开状态。如果实际帧频降到指定帧频之下,就会关闭消除锯齿功能以提高回放速度。使用此设置可模拟“消除锯齿”命令(“视图”>“预览模式”>“消除锯齿”)。

  模糊滤镜:使用模糊滤镜时,如果用于 blurX 和 blurY 的值是 2 的整数次幂(例如 2、4、8、16 和 32),则可以加快计算速度,并且可以使性能提高 20% 到 30%(flash的帮助是介样说滴)。

转载于:[url=http://www.]http://www.[/url]
搜索更多相关主题的帖子: 内存 网页 CPU 浏览器 
2007-11-29 19:58
那边有朵蘑菇云
Rank: 1
来 自:很……那啥的一个地方
等 级:新手上路
威 望:1
帖 子:390
专家分:0
注 册:2007-9-3
收藏
得分:0 

不错

很多地方没看明白

身不残 志更不坚
2007-12-04 09:08
快速回复:如何减少网页的内存与CPU占用
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.041666 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved