测试一波SpringBoot的HTTP吞吐量

吃可爱长大的小学妹 提交于 2021-01-08 08:51:16

本来,其实就我个人而言现在很少去弄性能这一块的阵地了,主要在做设计与架构,不过前几天刚刚关注公众号的罗哥给我抛了关于性能方面的问题。

测试一波SpringBoot的HTTP吞吐量

一个问题立马引起了我的兴趣,太久没弄性能方面的事情了,所以在隔天有空的时候就立马动手测试了一下。

当然这个性能是在本机测的,所以还要看本机的配置。以下是我的机子的配置。

测试一波SpringBoot的HTTP吞吐量

你需要准备的是一个自己写的应用程序与JMeter,可能有一部分人还没有弄过Jmeter,大家可以去网上找一下,安装下载包括测试都有很多教程了。

应用程序这里就不说了,SpringBoot或者SSM等其他的都可以。

Jmeter的几个简单步骤说一下:

1、创建用户组

测试一波SpringBoot的HTTP吞吐量

2、设置用户组参数

线程数是测试的变量,下面的两个参数,大家可以和我一致,如果自己的机子性能比较差,那就设置低一点。

测试一波SpringBoot的HTTP吞吐量
3、HTTP取样

最重要的,让JMeter测试什么,你总要说清楚

测试一波SpringBoot的HTTP吞吐量

4、HTTP取样参数设置

这个就改为你的应用程序参数

测试一波SpringBoot的HTTP吞吐量

5、HTTP的响应断言

测试一波SpringBoot的HTTP吞吐量

6、响应断言设置

做简单的,直接看返回代码是不是200

测试一波SpringBoot的HTTP吞吐量

7、查看效果与报告

然后对线程组加监听器了,这个看你想看到什么结果报告,一般选聚合报告,我们就可以看吞吐量。

测试一波SpringBoot的HTTP吞吐量

开始测试啦!

测试参数我将线程组即用户数设置为三组:100、200、300

应用程序我用了两套,一套是同步,一套是Deferred的异步处理,并且都模拟生产在线,每个请求都休眠2s后返回结果。

Github地址如下:https://github.com/UncleCatMySelf/Spring-Tutorial

接着启动项目再用JMeter去测试就好啦,相对还是比较简单的。

线程数100的 我就不拿出来了 ,双方的吞吐量都差不多。

线程数200的,正常情况下

测试一波SpringBoot的HTTP吞吐量

线程数200的,Deferred情况下

测试一波SpringBoot的HTTP吞吐量
线程数300的,正常情况下

测试一波SpringBoot的HTTP吞吐量

线程数300的,Deferred情况下

测试一波SpringBoot的HTTP吞吐量

可以很明显的看到,在线程数(用户数)不断上升的情况下,异步的吞吐量性能更加优越。

好啦,本章就先说到着了。

感谢阅读。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!