Java高性能高并发秒杀系统(5)
1. JMeter压力测试
1.1 测试过程
- 打开jmeter.bat
- 设置HTTP默认请求
编写协议和端口号 - 编写测试HTTP请求
因为我们已经写过默认设置
,我们就可以不用编写协议和地址了,如下,只需编写请求类型
和地址
即可 - 添加聚合报告
我们即可在报告中查看压测信息
1.2 Linux top命令
- top:相当于Windows下的任务管理器,可以动态显示当前进程的状况
2. 自定义配置文件JMeter压测
2.1 测试过程
与上方基本一致,不过,要在测试的请求上,添加CSV数据文件设置
读取我们自己编写的配置文件,并且标注变量名称,如此,即可开始压测。
其中配置文件信息,用英文逗号隔开
3. Redis压测
1 | #100个并发连接,100000个请求 |
4. Linux环境下,命令行压测
- 在Windows目录下写好
jmx文件
- 命令行:
sh jmeter.sh -n -t xxx.jmx -l result.jtl
- 再将result.jtl
导入到jmeter中
4.1 打成jar包
1 | maven clean package |
打开jar包,我们进入META-INF目录下,打开MANIFEST.MF文件,我们可以发现如下语句
其中Main-Class为SpringBoot框架的启动类,在这个类中可以跟进看源码
Start-Class为我们自己编写的启动类
4.2 上传到Linux服务器上
1 | #执行如下命令,之后即可根据如下地址访问 |
4.3 编写.jmx文件
在Windows上用JMeter编写.jmx脚本
,上传到服务器上,执行如下命令行
1 | jmeter.sh -n -t good_list.jmx -l result.jtl |
之后,下载result.jtl到Windows本地,进行报告分析
5. SpringBoot 打war包
- 在pom.xml文件中,添加打包为war包的标签
1 | <packaging>war</packaging> |
- 添加tomcat provided编译时的依赖
1 | <dependency> |
- 在主类中,
实现SpringBootServletInitializer,重写configure()
方法
1 |
|
- 将ROOT目录删除,并且把我们的war包修改为ROOT.war,放在webapps目录下,即可访问