Java秒杀项目——第四章 jmeter压测

4.1 Jmetter入门

使用压测工具:

新建线程组,

添加监听器

调整参数生成聚合报告。

4.2 自定义变量(携带参数)

压测UserInfo接口:

新建http请求填入token参数

模拟多个token访问:

添加配置原件csv data set Config,导入配置文件。

指定variable Name UserId,UserToken, 填入参数使用${UserToken}引用。

4.3 命令行压测

redis压测工具 redis-benchmark

redis-benchmark -h 127.0.0.1 -p 6379 -c 100 -n 10000

模拟 100个并发连接,10000个请求。

-q -d 100 存取100个字节的数据包 -q只输出简单的结果

redis-benchmark -t set,lpush -q -n 10000 测试set,和lpush命令

springboot项目打成war包

1、添加包 org.springframework.boot的war包依赖。scope指定为provided

2、build添加 maven-war-plugin

3、springboot启动类继承springbootServletInitializer类重写configure方法

4、命令行 mvn clean package

jar包和war包的区别https://www.jianshu.com/p/3b5c45e8e5bd

4.4 Jmetter命令行压测

1、window录好jmx脚本

2、命令行 sh jmeter.sh -n -t XXX.jmx -l result.jtl 会生成result文件

3、result.jtl 导入jmeter

  • 出现一个bug 数据库中的库存出现负数 -13 :
  • 然而代码中判断大于0才进行-1的操作,原因是多个线程取到1或者0,再进行-1

你可能感兴趣的:(java,Java项目)