1 测试环境
1.1 服务器硬件
待测试主机采用的是aws 云服务器选择了两款测试
1.1.1 t2.micro
t2.micro 性能突进性ec2,也就是aws global免费套餐那款服务器,配置如下:
t2.micro 性能突进性ec2,也就是aws global免费套餐那款服务器,配置如下:
型号 | vcpu | ecu | 内存 | 存储 | 网络性能 | 价格(小时) |
---|---|---|---|---|---|---|
t2.micro | 1 | 变量 | 1 | 仅限 ebs | 低到中等 | 0.0945 |
单核1g,cpu性能为0.45ecu,性能突进时可以达到2ecu。网络性能据说20mbps~100mbps
ps:ec2 计算单位 (ecu) – 一个 ec2 计算单位 (ecu) 相当于一个 1.0-1.2 ghz 2007 opteron 或 2007 xeon cpu 的计算能力。
1.1.2 c5.large
然后选了一台c5.large进行评估
型号 | vcpu | ecu | 内存 | 存储 | 网络性能 | 价格 |
---|---|---|---|---|---|---|
c5.large | 2 | 9 | 4 | 仅限 ebs | 高达 10gb | 0.493 |
双核4g,性能可以达到9ecu
1.1.3 压力机
压力机为同一可用区的内的另一台c5.large。
1.2 测试工具
1.2.1 测试端
主要采用ab工具进行测试。ab工具可以跑到20000万的并发,对于单机测试已经够用了。
关于ab工具使用可参考另一篇博客:
1.2.2 服务器监控
服务器端监控主要采用aws后台cloudwatch服务,在自己top 工具查看cpu 内存的使用情况。
关于top命令使用可以参考另一篇博客:
1.3 测试方法
在express 框架 app.js 直接添加一个test路由并直接返回res.end()。
2 测试数据
2.1 c5.large
我们可以看从图中看出并发量在2000时,平均响应时间在874.725ms,qps在2286.43左右,在一台300多/月左右2核4g服务器上,express框架本身性能表现还不错。
2.2 t2.micro
我们可以看从图中看出并发量在300时,平均响应时间在189.191ms,qps在1585.7左右,70块/月t2在性能突进的情况数据数据挺好,但也可以从图中看出并发量在1000以后,整体性能表现就不是很稳定了。
3 相关文档
估计物联网设备并发量整理的blog:
https://blog.csdn.net/m0_37263637/article/details/88649056
压力测试工具ab:
压力测试的指标及方法:
https://blog.csdn.net/m0_37263637/article/details/88749318
以上所述是www.887551.com给大家介绍的使用node+express测试服务器性能,希望对大家有所帮助。在此也非常感谢大家对www.887551.com网站的支持!