惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

月光博客
月光博客
WordPress大学
WordPress大学
博客园 - 三生石上(FineUI控件)
H
Help Net Security
小众软件
小众软件
The Cloudflare Blog
人人都是产品经理
人人都是产品经理
Apple Machine Learning Research
Apple Machine Learning Research
S
SegmentFault 最新的问题
Last Week in AI
Last Week in AI
爱范儿
爱范儿
量子位
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
IT之家
IT之家
博客园 - 【当耐特】
V
Visual Studio Blog
大猫的无限游戏
大猫的无限游戏
博客园_首页
Jina AI
Jina AI
D
Docker
博客园 - 司徒正美
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Microsoft Security Blog
Microsoft Security Blog
阮一峰的网络日志
阮一峰的网络日志

博客园 - LCX测试小姐姐

apifox 批量导入和运行项目 Jmeter 与 阿里云 性能测试PTS 作为python自动化测试 推送阿里的通义灵码,大大提高效率 redis测试点 性能测试过程中优化-3: 性能测试过程中优化-2: jmeter 把响应结果数据写入指定txt文件 Elasticsearch 分词功能 Elasticsearch 常用功能 Cookie、session、token、sign鉴权 性能测试过程中优化-1: RocketMQ pip freeze >requirements.txt python 生成 .exe文件、调用.exe文件 jmeter性能测试实例2解析--linux环境 memcache常用命令 memcache与redis关系与区别 MySql常见性能查询、调优语句和慢sql 性能测试中TPS值上不去分析原因及满足性能指标 mysql之测试工程师必会基础知识
jmeter性能测试实例3解析--性能瓶颈分析过程
LCX测试小姐姐 · 2023-03-08 · via 博客园 - LCX测试小姐姐
  • 场景要求

1、用户登陆---每个用户登陆一次(仅一次控制器)

2、压测试接口获取门店列表

  • 性能场景指标

1、验证最大在线用户数--(负载测试)

2、错误率<0.5%

3、请求响应时间<2S

4、场景运行时间10分钟--不需要 同步定时器

5、服务器资源使用合理(cpu使用率<80%,内存使用率<80%)

  • 脚本设计如下:

  • 运行结果及分析流程

1、运行场景--聚合报告(重要指标:响应时间、错误率、吞吐量)99%用户登陆响应时间超过2S,未达标

 2、top命令查看服务器资源,看具体监控数据:发现cpu过高,哪个进程占cpu?

cpu包含:sys系统、usr用户、idle空余、io%输入输出 

(top命令)第一个红框是百分比,第二个红框是总共,例如若8核cpu服务器下面红框内最高可达800%
load average:cpu分别在1/5/15分钟内的平均负载值。若8核这里达到可以短暂的超过8没问题,但不要持续时间过长

 发现,usr用户进程使用率高,是哪个进程导致这样高的cpu使用率

3.1、若是mysql高,原因:第一可能是库、表设计不合理;第二可能索引问题;第三可能死锁、大表、慢查询问题

-- 查询慢查询次数
show status LIKE 'slow_queries';
-- 查询主从延时时间
show slave STATUS
-- 查看慢查询日志是否打开
show variables LIKE 'slow_query_log';
-- 查看慢查询日志的路径 /var/log/mysql/slow.log
show variables LIKE '%slow_query_log%';
-- 查看慢查询阈值,value单位为秒
show variables LIKE 'long_query_time';
-- 慢查询记录表
SELECT * from mysql.slow_log
-- 设置慢查询时间
setlong_query_time=2;
-- 使用explain来分析sql语句实现优化  主要关注type、key、rows两列
EXPLAIN 具体sql语句;

优化前:EXPLAIN 具体sql   如下图, 主要关注type、key、rows几列,key未设置主键,rows扫描记录数过多

优化(加主键)后:EXPLAIN 具体sql   如下图,rows=1 性能会大大提升

3.2、若是java root 进程比较高

 查看该进程79478对应的线程,此时用命令“top -H -p 进程号PID”来查看具体哪个服务高;top -H -p 79478   结果如下:

 

 (注:java进程里容易出现的性能问题:线程死锁、堆内存溢出(具体哪个对象)、GC年轻态 还是 年老态、jar包问题)

3.3、若是redis(缓存服务器)问题

3.3、若是nginx问题,权重设计是否到位

3.3、若是tomcat问题

3.3、若是mq问题

  • 分析流程总结:

现象:Jmeter请求响应时间长

1、服务器资源使用情况:top

2、哪个进程占用资源高(mysql):top -H -p PID

3、阿里云服务器性能监控(数据库)分析:得知慢sql

4、查看关键指标:EXPLAIN

5、打开相应日志