十六、Vert.x、Actix-web、Warp、Axum 性能对比
本篇整理自国外大佬的一个视频,整理成文,方便随时查看。测试机,16核,32G内存。
大佬进行了两种测试,下面分开整理。
1、ab -n 1001 -c 1000 http://localhost:port/ && reset && ab -n 100000 -c 1000 http://localhost:port/
科目 | Vert.x | Actix-web | Warp | Axum |
---|---|---|---|---|
CPU | 1x99% +15x14% | |||
内存 | 780.6 MB | 124.9 MB | ||
总耗时 | 30.791s | 7.816s | 6.774s | 7.032s |
并发数 | 1000 | 1000 | 1000 | 1000 |
处理请求 | 100000 | 100000 | 100000 | 100000 |
失败数 | 0 | 0 | 0 | 0 |
总传数据 | 9.1G | 9.94G | 9.48G | 9.48G |
每秒请求 | 3,247.69 | 12,795.03 | 14,761.42 | 14,220.24 |
Time per request | 307.911 [ms] (mean) | 78.155 [ms] (mean) | 67.744 [ms] (mean) | 70.322 [ms] (mean) |
Time per request | 0.308 [ms] (mean, across all concurrent requests) | 0.078 [ms] (mean, across all concurrent requests) | 0.068 [ms] (mean, across all concurrent requests) | 0.070 [ms] (mean, across all concurrent requests) |
Transfer rate | 310,081.51 [Kbytes/sec] received | 1,334,381.45 [Kbytes/sec] received | 1,467,377.19 [Kbytes/sec] received | 1,413,580.35 [Kbytes/sec] received |
特定时间内(毫秒) 服务的请求百分比 |
50% 305 66% 307 75% 309 80% 310 90% 314 95% 330 98% 350 99% 383 100% 406 |
50% 75 66% 77 75% 78 80% 79 90% 82 95% 84 98% 94 99% 480 100% 1223 |
50% 67 66% 70 75% 71 80% 72 90% 74 95% 75 98% 77 99% 77 100% 1095 |
50% 69 66% 71 75% 72 80% 73 90% 76 95% 78 98% 81 99% 82 100% 1100 |
2、wrk -t 6 c 1000 -d 60s http://localhost:port/users
Vert.x
内存:780.3 MB,CPU:1x99% + 15x14% 。
Running 1m test @ http://localhost:8888/6 threads and 1000 connectionsThread Stats Avg Stdev Max +/- StdevLatency 286.81ms 14.16ms 518.22ms 96.88%Req/Sec 582.98 202.88 1.20k 63.65%207674 requests in 1.00m, 18.91GB read
Requests/sec: 3455.97
Transfer/sec: 322.23MB
actix-web
内存:124.9 MB,CPU:6x45% + 5x64% + 3x78% + 2x95% 。
Running 1m test @ http://localhost:8083/users6 threads and 1000 connectionsThread Stats Avg Stdev Max +/- StdevLatency 55.18ms 8.09ms 131.79ms 69.98%Req/Sec 2.97k 172.47 3.45k 70.25%1065123 requests in 1.00m, 105.93GB read
Requests/sec: 17728.17
Transfer/sec: 1.76GB
warp
内存:27.5 MB,CPU:5x30% + 1x40% + 1x53% + 1x63% + 1x78% + 3x70% 2x98% + 2x100%。
Running 1m test @ http://localhost:8082/users6 threads and 1000 connectionsThread Stats Avg Stdev Max +/- StdevLatency 53.43ms 38.45ms 348.90ms 73.38%Req/Sec 3.37k 215.00 4.06k 69.94%1207865 requests in 1.00m, 114.51GB read
Requests/sec: 20102.66
Transfer/sec: 1.91GB
axum
内存:28.2 MB,CPU:2x35% + 2x40% + 4x54% + 3x65% + 2x74% + 2x82% + 1x97% 。
Running 1m test @ http://localhost:3000/users6 threads and 1000 connectionsThread Stats Avg Stdev Max +/- StdevLatency 61.29ms 44.20ms 466.64ms 72.21%Req/Sec 2.93k 184.84 4.00k 71.56%1048424 requests in 1.00m, 99.39GB read
Requests/sec: 17449.80
Transfer/sec: 1.65GB
十六、Vert.x、Actix-web、Warp、Axum 性能对比相关推荐
- Flask后端实践 连载十六 Flask实现微信Web端及APP端登录注册
Flask后端实践 连载十六 Flask实现微信Web端及APP端登录注册 tips: 本文将实现微信Web端和APP端登陆注册 本文基于python3编写 代码仓库 项目场景 某天,项目经理说,项目 ...
- php vs lua,解析LUA与PHP在WEB应用的性能对比
解析LUA与PHP在WEB应用的性能对比是本文要介绍的内容,这几天用在WEB开发的LUA框架已经完成,框架中已包括数据库操作和模板操作的功能,能够很简单方便的应用在WEB开发上.在此时我对这个LUA框 ...
- 第三百二十六节,web爬虫,scrapy模块,解决重复ur——自动递归url
第三百二十六节,web爬虫,scrapy模块,解决重复url--自动递归url 一般抓取过的url不重复抓取,那么就需要记录url,判断当前URL如果在记录里说明已经抓取过了,如果不存在说明没抓取过 ...
- Web Hacking 101 中文版 十六、模板注入
十六.模板注入 作者:Peter Yaworski 译者:飞龙 协议:CC BY-NC-SA 4.0 模板引擎是允许开发者或设计师在创建动态网页的时候,从数据展示中分离编程逻辑的工具.换句话说,除了拥 ...
- web工作流管理系统开发之十六 主子流程参数传递的实现
在设计流程的时候,如果涉及到子流程,就会有主子流程间传递参数的过程. 例如,将主流程的执行人,传递给子流程,子流程根据主流程的执行人不同,会有不同的处理方式: 又例如,采购流程中,卖方备货处理时,发现 ...
- Shell脚本学习-阶段二十六-Web服务与端口
文章目录-Shell阶段二十六-端口与服务对照表 前言 端口与Web服务对照表 简介 前言 端口与Web服务对照表 2端口:管理实用程序 3端口:压缩进程 5端口:远程作业登录 7端口:回显 9端口: ...
- Flask 教程 第十六章:全文搜索
本文转载自:https://www.jianshu.com/p/56cfc972d372 这是Flask Mega-Tutorial系列的第十六部分,我将在其中为Microblog添加全文搜索功能. ...
- 十六款值得关注的NoSQL与NewSQL数据库--转载
原文地址:http://tech.it168.com/a2014/0929/1670/000001670840_all.shtml [IT168 评论]传统关系型数据库在诞生之时并未考虑到如今如火如荼 ...
- oracle过滤器基础,Oracle培训(四十六)——Servlet第六章知识点总结——过滤器编程...
Oracle培训(四十六)--Servlet第六章知识点总结--过滤器编程 目标 编写一个过滤器 部署一个过滤器 了解请求和响应包装器 在请求分发器下的过滤器 知识点预览 过滤器 过滤器 1. 什么是 ...
最新文章
- Spring Batch在大型企业中的最佳实践
- c语言试题 改错题,精选二级C++试题 – 改错题
- 如何实现Asp与Asp.Net共享Session
- 如何将freemarker文件转化为html文件
- android 获取连接WiFi的名称
- PaddleOCR和ChineseOCR的对比
- 改进初学者的PID-修改整定参数
- C语言 十进制和八进制相互转换 - C语言零基础入门教程
- 理解PHP5中static和const关键字
- 樊登讲亲密关系_看了《亲密关系》这本书,原来吵架是牺牲对方来保护自己
- springboot 毕业设计管理系统
- ACL-IJCAI-SIGIR顶级会议论文报告会(AIS 2022)笔记1:推荐系统
- PS如何做文字扫描效果
- 小巷开店问题(答案揭晓)
- Job和CronJob介绍
- 奇迹按键精灵挂机脚本_奇迹挂机捡东西脚本
- python考证书-Python全国二级等级考试(2019)
- 泛函分析笔记2:赋范空间
- python IO Demo
- TC Games问题解答:连接、卡顿、控制视角解决方法,无需安卓模拟器玩手机游戏