关于页面执行效率的问题

来源:互联网 发布:日韩和欧美 知乎 编辑:程序博客网 时间:2024/06/05 22:40

最近一个星期都在修改公司的公共列表页面开发标签,是翻译.NET组的组件,页面执行效率的问题困扰了我很久,峰值的时候CPU占用率达到100%,几乎把页面,标签,js的代码全部拆开了,归结原因有以下几点:

1、  隐含域的问题

隐含域是不会显示在页面上的,通常来说是作页面控制使用,保存一些不想让用户看到的值,在表单里面如果包含过多的隐含域,会带来两方面的问题,一方面是提交的时候会连同所有表单一起提交,数据量比较大,增加服务的负担,另外一方面是当你的页面滚动的时候(我们的标签里面可以拖动表头)增加浏览器处理负担,占用大量的CPU,最初我们表单里面有22N(记录数)个隐含域,删减到16个隐含域,减低了3%的CPU占用率;

2、  JS的问题

如果使用JS数组,达到一定数量后,处理起来相当耗费CPU及内存,应当尽量避免在页面上放置太多的JS数组,降低浏览器耗费的资源;

3、  CSS的问题

这个问题相当隐讳,在每个页面上CSS是不可避免的,当CSS中出现expression的时候,就必须要小心了,expression可以给你带来更多的页面效果,比如我们利用css实现了不同记录行显示不同的CSS样式,但是expression效率相当低下,耗费CPU的情况相当严重。去掉了之后CPU的占用率下降25%。

综上所述,考虑到页面执行的效率需,尽量少用隐含域,控制JS数组的大小,控制使用CSSexpression,不要以为引入越多的CSS样式越好,仅仅使用你要的CSS样式,一个页面最好只要使用一个CSS文件。完成了这些优化,CPU占用率控制在45%以内。

 
原创粉丝点击