时间: 2019-09-08阅读: 369标签: 请求
Asp.net AJAX性能优化测试
Asp.net AJAX提高性能的原则(对web同样也适用):
合并(Composite)-减少请求的次数
压缩(Compression)-减少请求的数据
- 缓存(Caching)-提高请求响应的效率
所以在优化的过程中能合并的就合并,能压缩的就压缩,能缓存的尽量缓存。
下面就用一个例子说明一下如何对一个asp.net 的页面进行优化,使它运行的效果最佳,当然这只是很低层面的做法,但很容易,很实用。适合初学者。
下面是本次测试一个页面
使用了4个控件+了一些ajaxcontroltoolkit 页面代码如下
第一次最糟糕的没有任何优化的前提下
一共有23个请求,没有用到缓存,发送16.74KB接收到0.96M数据,花了1.4秒
这是一个非常糟糕的页面,就算你第二次刷新,javascript还是不会被缓存
第二次让我们来修一下两个参数,在看一下最好的效果
一共有23个请求,所有脚本都被缓存并且压缩,发送16.74KB接收到17.70数据,花了0.51秒,这次的测试比第一次好了很多,从服务器返回的数据少了98%,这个效果是非常好的;
10bet,
第三次我们需要把这些多次请求的javascript合并成一次请求,这样可以带来更好的效果,这里需要下载一个ScriptReferenceProfiler;http://aspnet.codeplex.com/releases/view/13356 然后把它拖拽到你的页面里,它就会显示本页面请求的javascript-
下面是合并这些JavaScript的代码
ScriptMode="Release",EnablePartialRendering="False"
AjaxToolkit提供的脚本分debug和Release, Release的脚本去掉了对于得字符所以更小
下面是测试结果
一共有9个请求,所有脚本都被缓存并且压缩且合并,发送6.6KB接收到8.21KB数据,花了0.219秒,这次的测试和第一次非法比了;
以上测试希望对大家有所帮助,更希望看到大家有更好的优化方案。
业务代码经常会有 两个不一样的请求,拿到数据后合并成新数组的操作。但是在异步请求中我们不知道哪个请求的回调更快返回,从而使代码的合并时间无法确定。这就需要在两个异步请求都完成后再做数据处理。
本文由10bet发布于Web前端,转载请注明出处:10betAsp.net AJAX性能优化测试
关键词: