论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
ToB企服应用市场:ToB评测及商务社交产业平台
»
论坛
›
软件与程序人生
›
后端开发
›
.Net
›
.NET 6 EFCore WebApi 使用 JMeter 进行吞吐量测试 ...
.NET 6 EFCore WebApi 使用 JMeter 进行吞吐量测试
张国伟
金牌会员
|
2022-9-20 19:18:56
|
显示全部楼层
|
阅读模式
楼主
主题
826
|
帖子
826
|
积分
2478
.NET 6 EFCore WebApi 使用 JMeter 进行吞吐量测试
开发环境
VS2022
.NET 6
测试环境
测试工具
接口压力测试工具:JMeter
数据库
MySQL 5.7
数据库和WebApi服务在同一台服务器上,JMeter在本人笔记本上。
测试设置
200个线程并发,每个线程循环50次,共10000次请求。
接口代码
模糊查询、排序、分页查询第10页200条数据,参数化查询条件。
EFCore (第一轮请求),测试结果
服务程序部署到测试服务器上测试,连接MySql数据库。
吞吐量
只有200多
每个请求响应时间
最长5秒多
EFCore (第一轮请求结束后,20秒内进行第二轮请求),测试结果
服务程序部署到测试服务器上测试,连接MySql数据库。
经过第一轮10000个请求的充分预热,取第二轮10000个请求的测试结果。
吞吐量
1200多
每个请求响应时间
不到50毫秒
线程占用
最大达到143个线程
EFCore (第一轮请求结束后,20秒后进行第二轮请求),测试结果
吞吐量
1200
每次请求响应时间
100毫秒
线程占用
只有50多个线程
使用FactoryStartNew. StartNewThread
查询代码
FactoryStartNew. StartNewThread代码
使用FactoryStartNew. StartNewThread (第一轮请求),测试结果
服务程序部署到测试服务器上测试,连接MySql数据库。
吞吐量
不到200
每个请求响应时间
最长33秒
使用FactoryStartNew. StartNewThread (第一轮请求结束后,20秒内进行第二轮请求),测试结果
吞吐量
1000多
每个请求响应时间
200毫秒以内
线程占用
高达260多个线程
使用FactoryStartNew. StartNewThread (第一轮并发请求结束后,20秒后进行第二轮请求),测试结果
吞吐量
只有200多
每个请求响应时间
最长达到了30秒
在等待创建线程,.NET默认线程池,1秒才增加一个线程
线程占用
高达230多个线程
对比SqlSugar
同样的数据库,同样的数据,同样的查询,同样的JMeter测试设置,同样取第二轮测试结果。
吞吐量
395
每个请求响应时间
500毫秒
对比FreeSql
同样的数据库,同样的数据,同样的查询,同样的JMeter测试设置,同样取第二轮测试结果。
吞吐量
408
每个请求响应时间
不到500毫秒
对比Dapper.LiteSql
吞吐量
480多
每个请求响应时间
400多毫秒
结论
1. EFCore优秀,吞吐量和响应时间都非常优秀。
2. 使用FactoryStartNew. StartNewThread,能用,但有问题。
3. 如果觉得自己的ORM没问题,那就没有问题了,谁没事闲的做这种测试,慢一点不会死人,用户多了并发多了就加机器,作者和用户永远也不会知道,明明可以达到1000的吞吐量,却一直用的280吞吐量的ORM。
4. 比EFCore慢不丢人。
5. 不要说代码怎么写的,我要看测试结果。
测试工程地址
https://gitee.com/s0611163/Net6WebApiPerformanceTest
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
张国伟
金牌会员
这个人很懒什么都没写!
楼主热帖
XAF新手入门 - 类型子系统(Types Info ...
MyBatis 查询数据库
JAVA 装箱拆箱--到底指什么呢? ...
ThinkPHP5 远程命令执行漏洞
HarmonyOS(鸿蒙)开发一文入门 ...
浅入浅出 1.7和1.8的 HashMap
RabbitMQ入门 -- 阿里云服务器安装Rabb ...
红日安全内网渗透靶场-VulnStack-1 ...
[NOI2010] 航空管制
Prometheus配置Basic Auth进行安全防护 ...
标签云
存储
挺好的
服务器
快速回复
返回顶部
返回列表