蒋金阳 发表于 2009-5-7 02:03:36

网站优化之Ajax优化及相关工具

.CNIDC.COM
<br />
<br />web2.0大量的ajax的使用,提高了ui交互的效率,但是过度的滥用会带来不少的问题。
<br />
<br />ajax使用注意事项:
<br />
<br />1 尽量避免使用同步ajax调用。在一些登录的场合常常使用同步调用服务器的登录接口。
<br />
<br />同步调用,需要将页面上的所有元素给锁定住,代价高昂。
<br />
<br />2 ajax调用时多使用超时设置,目前许多ajax框架如jquery都会提供超时参数的设置。
<br />
<br />利用超时,可以很好的完善ui的交互,同时避免对服务器造成压力。
<br />
<br />3 针对业务特性开启ajax缓存。不需要重新拉取的东东,尽量的缓存起来。
<br />
<br />4 发送请求前对发送的数据进行pre验证,一方面可以做到对用户友好,另一方面避免太多的异常。
<br />
<br />不小心的异常数据会导致服务器down掉。
<br />
<br />5 对于服务器返回的数据也要仔细处理,不要相信其数据一定是格式化和验证好的。譬如对于json的数据,需要先判断相应的key是否存在,再进行操作,
<br />
<br />否则会出现undifined的情况。
<br />
<br />ajax请求处理一般的ui交互流程是这样的:
<br />
<br />1 当发起ajax请求时,更新ui,譬如出现一个高亮的tip,提示用户操作开始进行
<br />
<br />2 锁住需要更新的ui部份,同时提醒用户会什么会锁住,譬如将原div隐藏,加载一个正在加载的gif图标
<br />
<br />3 数据成功返回后,更新ui,解除对ui的锁定
<br />
<br />4 如果服务器返回失败,提示用户友好的失败信息
<br />
<br />ajax使用中一些提示:
<br />
<br />1 由于浏览器的同时向一个域名发起请求的并发数是有限制的,如ie默认的是2个,如果同时发起的ajax太多的话,是会被阻塞的。
<br />
<br />2 返回的数据类型选择json而不是xml,一方面json数据格式会更小一些,另一方面接送封装成为一个js对象,操作起来性能会更好一些
<br />
<br />3 尽量缓存能够缓存的内容,避免重复的发起请求
<br />
<br />1)使用全局对象
<br />
<br />2) flash的本地存储
<br />
<br />3)google gears
<br />
<br />4) ie的userData
<br />
<br />网站优化过程常用的工具:
<br />
<br />1 firebug和yslow,ff下常用的两个工具了
<br />
<br />2 httpwatch和fiddler,对于网络时间的检测也不错
<br />
<br />3 Task manager
<br />
<br />4 js内存泄漏检测工具
<br />
<br />5 观看优化的工具:
<br />
<br />1)AjaxView
<br />
<br />2)JsLex
<br />
<br />3)YUI profiler
<br />
<br /><br /><br /><blockquote class="blockquote">From: http://www.66yh.cn/read.php?tid-3295.htmlPowered by PHPWind.com</blockquote>
页: [1]
查看完整版本: 网站优化之Ajax优化及相关工具