zoukankan      html  css  js  c++  java
  • 关于async对webapi性能影响的疑问(asp.net core3) -- 请教大神

    都说action上使用异步能提升系统的整体性能,我就做了个简单的测试。

    用了一个非常简单的写数据的方法(entityframework),一种是异步模式,一种是同步模式,测试下来,同步模式稍微块一点点。

    难道说,只有比较耗时的方法,才适合采用用异步模式?

    或者说我这测试有什么问题?

    代码1

            public async Task<PostResult> EditLesson(LessonDto dto)
            {
                return await Task.Run(() =>
                {
                    return lessonService.EditLesson(dto, UserInfo);
                });
            }

    插入5000条数据的测试结果

    Status 200:    5000
    
    RPS: 115.1 (requests/second)
    Max: 2285ms
    Min: 29ms
    Avg: 83.5ms
    
      50%   below 74ms
      60%   below 78ms
      70%   below 83ms
      80%   below 91ms
      90%   below 105ms
      95%   below 121ms
      98%   below 145ms
      99%   below 167ms
    99.9%   below 2265ms

    代码2

           public PostResult EditLesson2(LessonDto dto)
            {
                    return lessonService.EditLesson(dto, UserInfo);
            }

    测试结果

    Status 200:    5000
    
    RPS: 149.5 (requests/second)
    Max: 2793ms
    Min: 18ms
    Avg: 63.6ms
    
      50%   below 58ms
      60%   below 60ms
      70%   below 63ms
      80%   below 67ms
      90%   below 74ms
      95%   below 86ms
      98%   below 103ms
      99%   below 126ms
    99.9%   below 2160ms
  • 相关阅读:
    winform导入导出excel,后台动态添加控件
    asp.net 导入excel文件
    asp.net gridview动态添加列,并获取其数据;
    中转Http请求
    窗体托盘后台运行
    后台程序完成指定任务
    死锁查看
    异步等待(ManualResetEvent
    C#后台程序重启IIS,发邮件通知
    mybatis入门视频总结
  • 原文地址:https://www.cnblogs.com/honghuamin/p/13754225.html
Copyright © 2011-2022 走看看