对于可能会出现OOM(内存溢出)、线程阻塞、资源争夺、线程锁等问题的接口,根据业务进行分析,如果该接口请求量大那么就有必要使用Jmeter进行压力测试,也叫并发测试。并发测试有助于我们及时发现接口存在的问题,不必部署到生产环境已经投入使用了才发现高并发会带来严重后果。
jmeter可安装的Linux、windows操作系统上,本文选择在windows系统中演示如何使用jmeter
一、apache官网下载jmeter
1.1 选择下载的版本
1.2 解压并启动jmeter
二、创建线程
2.1 创建线程组
2.2 设置线程组参数
只设置3个关键参数:
1.Number of Threads(users) :线程数量
2.Ramp-Up Period(in seconds):多长时间内启动所有线程
3.Loop Count:循环次数
本文设置参数依次为:
1.线程数:100
2.多长时间内启动所有线程:20(s)
3.循环次数:1次
2.3 创建HTTP请求
2.4 GET请求如何添加参数?
2.5 POST请求如何添加参数?
三、启动线程
3.1参数设置完毕启动线程
四、检查后台日志是否异常
4.1发布工程,让接口处于待调用状态
4.2 添加一行日志代码,并启动jmeter的线程
输出结果如预期,接口被调用了100次期间没有抛异常,测试完毕。
至于没有出现的OOM(内存溢出)、线程阻塞、资源争夺、线程锁等问题,以后肯定会遇到,只因为本篇文章罗列的业务代码太简单,没有触发到列举出来的一些问题。