一、JMeter简单使用

添加线程组,在线程组里设置要测试的线程数等。在线程组里添加HTTP请求默认值(设置请求ip端口号等)、HTTP请求(测试哪个页面)、需要查看的结果等。

在聚合报告里可以看到设置1000个线程的情况下吞吐量大概为190.(windows环境)

二、虚拟机环境压力测试

首先在虚拟机服务器中安装JDK以及MySQL。
把项目打包,JMeter打包,发布到虚拟机中。
在linux中执行./jmeter.sh -n -t first.jmx -l result.jtl进行压力测试,把结果保存在result.jtl中。用xftp传到windows中查看结果。结果如下。由于虚拟机分配的内存较少,所以吞吐量也很低。

三、配置同一用户测试

3.1 无参数请求测试

请求商品信息页,10000个请求,吞吐量207。

3.2 有参数请求测试

请求用户信息,10000个请求,吞吐量800+

四、配置不同用户测试

4.1 两个用户

在数据库里添加两个用户

在网页中测试两个用户对应的 userCookie ,将这些信息写进config.txt中备用。

在JMeter中,添加CSV数据文件设置,引入config.txt文件,设置编码格式为UTF-8。添加HTTP Cookie管理器,配置如下。


测试结果,吞吐量400+

4.2 配置用户步骤

配置不同用户步骤:

  • 准备CSV文件
    导入文件,设置编码格式,变量名称,逗号分隔
  • 准备Cookie管理器
    名称是代码里设置的name, 值是CSV文件里定义的变量名称

五、正式压测

将线程数改为1000,循环10次,也就是总共10000个线程。
首先在windows环境下测试,两个接口:商品列表、秒杀。
linux环境下暂时还未测试。(有点嫌麻烦,linux配置较低,吞吐量会比windows更小)

5.1 windows

  • 商品列表

    吞吐量225。
  • 秒杀
    添加一个秒杀接口。秒杀商品Id为1 的商品。

    测试结果:

    吞吐量120+。

5.2 小结

秒杀接口QPS比商品列表QPS小的多,因为秒杀接口要做数据更新,肯定要比查询效率低。
去数据库中查看数据,发现订单已经超卖,并且库存减为负数。
并且在代码中没有设置秒杀结束时间,商品恢复原价。后续进行修复。

六、使用工具类生成用户

为了进行秒杀接口的测试,准备工具类生成5000个不同的用户。
生成5000个用户后将用户写入数据库,并登录页面获取他们对应的的Cookie值,写入config.txt文件中。

【学习笔记】seckill-秒杀项目--(7)压力测试相关推荐

  1. 学习笔记-JMeter 进行接口压力测试

    一.压力测试场景设置 1.场景设定:进行接口压力测试时,有单场景也有混合场景.单场景就是对一个接口进行请求:混合场景需要对多个接口进行请求,在流程类业务场景会运用到 2.压测时间设定:通常时间为10- ...

  2. 软件测试学习笔记(九)淘宝测试

    软件测试学习笔记(九)淘宝测试 视频链接:软件测试_中国大学MOOC 1.淘宝性能测试经历哪三个发展阶段?简述其工作内容. (1)业务发展-基础阶段 编写性能测试白皮书和测试文档,整理了常用性能测试的 ...

  3. 关于秒杀系统的压力测试

    使用jmeter工具来进行秒杀系统的压力测试 首先是对暴露秒杀地址所能在线用户的测试,测试结果如下图所示: 当我设置180个线程1秒内开启并且进入秒杀界面的时候,发现Throughput的值是比样本的 ...

  4. Windows保护模式学习笔记(十四)—— 阶段测试

    Windows保护模式学习笔记(十四)-- 阶段测试 题目一 解题步骤 题目二 解题步骤 题目一 描述:给定一个线性地址,和长度,读取内容 int ReadMemory(OUT BYTE* buffe ...

  5. Scrapy:学习笔记(2)——Scrapy项目

    Scrapy:学习笔记(2)--Scrapy项目 1.创建项目 创建一个Scrapy项目,并将其命名为"demo" scrapy startproject demo cd demo ...

  6. webpack入门学习笔记10 —— 在项目中使用图片资源

    1. 写在前面 在前端项目中,图片是必不可少的一种资源.在使用图片的时候,我们可以有以下几种方式: 在 .html 文件中,通过 <img src="" alt=" ...

  7. JavaWeb黑马旅游网-学习笔记10【项目代码】

    Java后端 学习路线 笔记汇总表[黑马程序员] JavaWeb黑马旅游网-学习笔记01[准备工作] JavaWeb黑马旅游网-学习笔记02[注册功能] JavaWeb黑马旅游网-学习笔记03[登陆和 ...

  8. STM32学习笔记——MDK新建项目

    STM32学习笔记 KIEL新建项目过程 文章目录 STM32学习笔记 前言 一.keil新建库函数版本项目 二.注意事项 1.文件分类 2.MDK配置 总结 前言 此处使用寄存器版,进行学习.后期看 ...

  9. DSB2017项目grt123代码学习笔记一:项目基本情况

    DSB2017项目grt123代码学习笔记一:项目基本情况 Kaggle上Data Science Bowl 2017年肺结节检测比赛第一名grt123团队的算法. github地址:https:// ...

  10. 软件测试学习笔记(三)控制数据流测试

    软件测试学习笔记(三)控制&数据流测试 视频链接:软件测试_中国大学MOOC 2.3 结构化覆盖 2.4 控制流测试 2.5 数据流测试 1.什么是顶点覆盖? 对每个测试需求,即可达顶点,都可 ...

最新文章

  1. linux .lz进程,LLinux常用命令(二)
  2. MySQL日期及时间加减函数
  3. 史上最复杂业务场景,逼出阿里高可用三大法宝
  4. python vscode_VScode || 为VScode配置python环境
  5. java实训遇到问题解决_「instantiationexception」关于java出现 java.lang.InstantiationException异常的分析与解决方案 - seo实验室...
  6. 极光实时监听怎么调用_源码分析 Sentinel 实时数据采集实现原理(图文并茂)
  7. 推给我的广告都跟我最近看的内容有关系,怎么做到的?
  8. centos7 sh 注释_在CentOS7上安装RocketMQ 4.7.1
  9. 蓝桥杯 AGLO-152 算法训练 8-2求完数
  10. python 读取一个文件夹下所有图像
  11. 屏幕取词编程学习总结
  12. 调整html元素大小 resize
  13. AiDD AI+软件研发数字峰会开启编程新纪元
  14. 燃气管道运行全局实时监控系统-海城支线总页面
  15. 经典解压缩软件 WinRAR 5.71 无广告版
  16. 2023第八届少儿模特明星盛典 小超模刘子衿 担任全球赛代言人
  17. wamp出现拒绝访问
  18. c语言调用tuxedo步骤,c语言入门之BCB客户端tuxedo开发实例
  19. zookeeper随堂笔记
  20. 【web】【django】datatable的button扩展实现纯前端下载和copy指定列内容,以及django的HTTPResponse实现下载功能

热门文章

  1. 微信公众号常见问题~1024
  2. 刺激战场体验服最全更新:这样明日之后版“极寒模式”你喜欢吗?
  3. python之装饰器模式
  4. 南充计算机希望小学修建进展,涉及多个棚户区改造,2020年南充这个区拟实施130个重点项目!...
  5. Ubuntu+FFmpeg源码+H264+RTMP推流
  6. 北京大学2014计算机学科夏令营上机考试
  7. 官网查找Maven依赖包步骤
  8. 国内如何购买Google Colab会员
  9. 库卡机器人外部紧急关断已按_江门市库卡重工机器人保养中心
  10. HTML基础 || 01 web概述+HTML