概述

性能测试:

通过并发工具请求服务器,提前发现性能问题,优化并解决

为什么做性能测试?

  • 常规需求
  • 用户反馈性能问题
  • 项目对性能不放心

性能测试的最终目标:?

性能指标分析

多快好省

项目性能场景提取

提取高频业务、核心业务、扎堆场景

了解业务逻辑

了解项目部署框架

服务器部署架构,在有性能问题时,能分析

db--tomcat

多个tomcat -- nginx

keeplive 主从模式

多个tomcat -- nginx -- lvs

高性能F5服务器

db瓶颈,redis缓存

db--reids--tomcat

确定场景、性能目标

脚本开发

  • 初始化

    数据清理

  • 多环境支持

    用户自定义变量(是全局的)

    http请求默认值

  • 从1-n,并发时是否涉及单点登录

  • 加密

    一般加密md5加密

    自定义加密吗,让开发给加密jar包

  • 分布式测试

    注意csv路径配置

  • 场景逻辑是否正确

    如登录一次,使用逻辑控制器

  • debug调试

  • 结果树四大金刚进行调试

  • 断言

  • cookie

    消息头管理器

  • token

    json提取器

    正则表达式提取器

  • 集合点

    同步计时器

性能瓶颈分析与调优

场景设置与运行

场景流程

场景指标

grafana 监控平台进行监控

收集器,下载对应的收集器,tomcat、redis、、mysql、服务器

储存器

接收器,grafana

top命令

1、运行场景-看聚合报告

  • 响应时间,预期5s,实际30多s

    是什么导致的?
  • 错误率
  • 吞吐量

2、查看服务器资源--grafana看具体数据



发现cpu使用率过高

  • usr

    是哪个进程导致的?

  • sys

  • idle

  • io

top命令查看时root用户

mysql过高

  • 连接数
  • qps
  • 慢查询,需要有足够的数据
  • 锁表

数据库中设置慢查询日志

找出慢查询语句

可以把sql单独抽出来执行

选中,解释语句,找出问题,反馈给开发



查看进程里面的线程



再分析线程

java问题

  • 死锁
  • 堆溢出
  • GC,资源回收
  • jar包问题,第三方包不支持高并发

jmeter性能实战的更多相关文章

  1. Jmeter实时监控+SpringBoot接口性能实战

    性能测试 Jmeter实时监控+SpringBoot接口性能实战 自动化 SpringBoot Java Jmeter实时监控+SpringBoot接口性能实战 一.实验目的及实验环境 1.1.实验目 ...

  2. 11月1号开学! 《jmeter性能测试实战》崭新亮相!

    课程介绍 第10期<jmeter性能测试实战>课程,11月2号开学!全新改版,和之前的课程框架完全不同 主讲老师:飞天小子 上课方式:每周六周日晚8点到10点,QQ群视频在线直播教学 本期 ...

  3. JMeter性能监测插件介绍(三)

    JMeter 性能监测插件介绍 压力测试过程中,能够随时对负载服务器的健康状况的把控是相当重要的,有了这些数据,我们才能准确分析出服务器负载瓶颈.JMeter 插件包现在能够支持服务器监控,可以在所有 ...

  4. 性能测试分享:jmeter性能监控(一)

    性能测试分享:jmeter性能监控(一) poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq:908 ...

  5. jmeter接口测试实战-创建用户

    jmeter接口测试实战-创建用户 相信大多数看到标题的同学都会有疑问, 创建用户不是很简单吗, 调用一下创建用户接口, 传入指定入参, 用户即可创建成功, 今天我们的实战来讲讲创建场景.通过接口创建 ...

  6. JMeter接口测试实战-动态数据验证

    JMeter接口测试实战-动态数据验证 说到验证就不得不说断言, 先来看下JMeter官方给出断言(Assertion)的定义, 用于检查测试中得到的响应数据等是否符合预期,用以保证测试过程中的数据交 ...

  7. Jmeter接口测试实战-数据传递

    Jmeter接口测试实战-数据传递 接口与接口之间没有关联的测试是缺乏意义和没有灵魂的,只有数据在不同接口之间传递才能勾画出业务场景重要的链路. 我们用较为通用的http/https协议,接口普遍返回 ...

  8. Jmeter 接口测试实战-有趣的cookie

    Jmeter 接口测试实战-有趣的cookie 场景: 接口测试时常都需要登录,请求方式(post), 登录常用的方法有通过获取token, 获取session, 获取cookie, 等等. 这几种都 ...

  9. MongoDB的真正性能-实战百万用户

    阅读目录 一.第一个问题:Key-Value数据库可以有好多的Key,没错,但对MongoDB来说,大错特错 二.第二个问题:FindOne({_id:xxx})就快么? 三.第三个问题:精细的使用U ...

随机推荐

  1. Docker源码安装附内网镜像安装演示

    Docker源码安装附内网镜像安装演示 系统版本要求 当前系统版本:CentOS Linux release 7.9.2009 (Core) 内核版本:3.10.0-1160.el7.x86_64 注 ...

  2. 题解 v

    传送门 考场上只会爆搜--觉得重复状态其实有很多但不知道怎么记忆化,结果-- 对于类似这样n不算太小但只有二三十,而重复状态极多的题其实也是可以跑状压/记搜的,状态可以开map存 然后就是爆搜,就没什 ...

  3. Git在IDEA中的日常使用

    1.Git介绍Git对于做开发的小伙伴并不陌生,Git是现在比较流行的版本控制工具.Git的仓库分为本地仓库和远程仓库,当代码开发完成后,先提交(commit)到本地仓库,再推送(push)到远程仓库 ...

  4. [转]C# 互操作性入门系列(四):在C# 中调用COM组件

    传送门 C#互操作系列文章: C# 互操作性入门系列(一):C#中互操作性介绍 C# 互操作性入门系列(二):使用平台调用调用Win32 函数 C# 互操作性入门系列(三):平台调用中的数据封送处理 ...

  5. mfc 常用的知识点

    在MFC中引入了文档-视结构的概念,文档相当于数据容器,视相当于查看数据的窗口或是和数据发生交互的窗口.因此一个完整的应用一般由四个类组成:CWinApp应用类,CFrameWnd窗口框架类,CDoc ...

  6. vue:Missing space before value for key 'components'

    原因是Vue对语法比较严格,而eslint是一个语法检查工具,对语法要求极其苛刻严格,于是就error了 解决办法是关闭eslint的语法规则,找到build/webpack.base.conf.js ...

  7. unitest单元测试TestCase 执行测试用例(一)

    前言 unittest单元测试框架不仅可以适用于单元测试,还可以适用自动化测试用例的开发与执行,该测试框架可组织执行测试用例,并且提供了丰富的断言方法,判断测试用例是否通过,最终生成测试结果. uni ...

  8. js调试之firbug

    说下几种方法吧: 1.用alert 这个最最直观 把你想要的内容弹出来给你看,但是要看哪里 就要在哪里加,比较麻烦 2.用firefox 或者chrome浏览器 里面有debug工具的 3.如果想用i ...

  9. CountDownLatch能不能在多个线程上添加await?

    在CountDownLatch类的使用过程中,发现了一个很奇怪的现象: CountDownLatch countDownLatch = new CountDownLatch(2); Runnable ...

  10. MySQL——主从复制

    ---- 高可用 ---- 辅助备份 ---- 分担负载 复制是MySQL的一项功能,允许服务器将更改从一个实例复制到另一个实例. --主服务器将所有数据和结构更改记录到二进制日志中. --从属服务器 ...