找回密码
 立即注册
首页 业界区 业界 项目分析之:WebService,jQuery,原生对象几种前端加载 ...

项目分析之:WebService,jQuery,原生对象几种前端加载数据的性能比较(1)

别萧玉 2025-5-29 15:10:19
背景
最近的项目遇到了一些性能瓶颈,本篇文章先不谈数据库方面的问题,仅拿前端加载一定量的数据来进行阐述,觉得目前方式比较耗时。前段时间也在做些系统优化,效果并不明显。现在是怀疑出在前端的一些ajax调用以及jQuery本身存在的一些性能问题上;于是,先试着做出些原型,进行各种形式下前端加载数据时的性能对比。
 
详细分析
1. 首先,创建一系列的实体类:
1.gif
2.gif
代码 ///  
/// 用户信息 
///  
public class UserInfo 

    public int UserId { get; set; } 

    public string UserName { get; set; } 

    public string Email { get; set; } 

    public Class Class { get; set; } 

    public List UserRightList { get; set; } 


///  
/// 班级信息 
///  
public class Class 

    public int ClassId { get; set; } 

    public string ClassName { get; set; } 


///  
/// 用户权限信息 
///  
public class UserRight 

    public int RightId { get; set; } 

    public string RightName { get; set; } 
}其中包括用户信息类、班级信息类、用户权限类。
 
2. 在Web.config配置一个appsettings节点

     

表示一次加载的数据量(用户信息数)为3000。
并且将compilation节点的dubug属性设置为false。
 
3. JSON加载数据测试
1)首先先测试 WebService客户端调用并且最后返回JSON加载数据:
3.gif
4.gif
代码 function bindDataWebServiceJson() { 
    var watch = new Stopwatch(); 
    watch.start(); 

    JsonService.GetUserList( 
    function(data) { 

        var builder = new Sys.StringBuilder(); 
        for (var i = 0, length = data.length; i 
您需要登录后才可以回帖 登录 | 立即注册