- 注册时间
- 2013-4-22
- 最后登录
- 2013-7-3
- 阅读权限
- 10
- 积分
- 74
- 精华
- 0
- 帖子
- 8
|
本帖最后由 xich8896 于 2013-4-22 11:05 编辑
网页中用定时器每隔3秒钟调用一次reload()方法,以达到实时自动刷新页面的目的,每次返回50行数据,在firefox,chrome中CUP点用4~8%,内存占用基本不变,性能不错。但在IE(6,7,8)中,CUP占用稍高(20%~35%),最严重的问题是内存占用,从最初的50M左右一直涨到1300M左右,只用了2个多小时,最终页面崩溃。
function pTimer() {
setTimeout("pTimer()", 3000);
grid.reload();//IE中内存一直在涨
}
以前做过类似功能,采用的做法是在服务器端直接生成内容"table"代码(不生成json格式数据),然后在前端采用ajax每隔3秒得到一次服务器端生成的"table"代码,并显示。
function pTimer() {
setTimeout("pTimer()", 3000);
$("#前端容器").load(tUrl);//服务器端生成"table"代码
}
这样的好处是不用在浏览器端分析json数据再生成"table"代码,大大降低前端的工作量,性能很棒。实时显示(每3秒自动刷新一次)1000行数据(没有采用动态加载和分页),IE浏览器CUP只有3~7%左右,内存无增长。这种方式已开发的软件已安装近千用户,没有在性能方面提出异议。
|
|