JMeter—常见问题(十四)
参考《全栈性能测试修炼宝典JMeter实战》第十五章 JMeter常见问题
1、无法产生负载
注意检查各元件是否时禁用状态。JMeter在运行时是以数形式加载各种元件的,如果父节点被禁用,那么其下的所有子节点将不会运行。虽然下面的子节点没有被禁用,但运行时根本无法产生负载,但JMeter不会报错。
2、做接口测试
常见的有HTTP协议、Socket协议、WebSocket协议、Soap协议等,只要构造好表单,在JMeter中用相应的Sampler就可以模拟请求。
3、多个测试计划运行
在编辑菜单栏中有个合并操作,点击后可以将多个测试计划合成一个,每一个脚本是一个线程组,运行时同时运行线程组即可。
4、找导致CPU瓶颈的程序
在性能测试分析时,往往采用自底向上的方式来进行问题分析,我们从硬件的指标来反向追索问题根源。其中CPU的性能瓶颈分析最为常见。
监控CPU使用率,CPU使用率分为系统和用户的使用率。
系统CPU利用率高可以先关注下IO,有没有非空闲等待,通常的系统CPU利用高都是IO问题,此时的中断与切换都高。
用户CPU利用率高,直接使用top命令查看系统进程和线程,通过线程或进程ID可以找到对应的程序。
5、找导致内存瓶颈的程序
linux系统可用内存包括物理内存、缓存、程序占用的内存等部分。内存瓶颈会导致程序运行缓慢甚至系统崩溃,通过监控内存的使用情况发现潜在的性能问题。
6、找导致IO瓶颈的程序
网络IO的监控可以监控网络中断、带宽、网络连接数及网络连接状态,从而确定那方面的瓶颈。
本地磁盘IO可以监控有没有IO的非空闲等待
7、计算并发用户数
并发数受到很多因素的影响。比如思考时间、工作时间、业务分布等,通常技术并发用户数有三种方式:
由TPS来估算并发数
由TPS来估算,适用于联机操作系统,这类系统响应时间快、业务量大。
Vu(业务名称)=TPS(业务名称)x (RunTime+ThinkTime)
Vu表示此业务的虚拟用户数,RunTime时测试程序/脚本运行一次所消耗的时间,包括事务时间和非事务时间
由在线活动用户数来估算并发数
适合于读请求多的系统,比如新闻

根据经验估算
不是一种严谨的估算方式。
8、性能测试的分析方法
自底向上:通过监控硬件及操作系统性能指标(CPU、内存、磁盘、网络等硬件资源的性能)来分析性能问题(配置、程序等)。因为用户请求最终是由计算机硬件设备来完成的。
自顶向下:通过生成负载来观察被测试的系统性能,比如响应时间、吞吐量,然后从请求起点由外及里一层一层分析。
JMeter—常见问题(十四)的更多相关文章
- Jmeter(三十四) - 从入门到精通进阶篇 - 参数化(详解教程)
1.简介 前边三十多篇文章主要介绍的是Jmeter的一些操作和基础知识,算是一些初级入门的知识点,从这一篇开始我们就来学习Jmeter比较高级的操作和深入的知识点了.今天这一篇主要是讲参数化,其实前边 ...
- Jmeter(二十四)_服务器性能监控
下载插件 1.访问网址http://jmeter-plugins.org/downloads/all/,下载三个文件.其中JMeterPlugins-Standard和JMeterPlugins-Ex ...
- <转>jmeter(十四)HTTP请求之content-type
本博客转载自:http://www.cnblogs.com/dinghanhua/p/5646435.html 个人感觉不错,对jmeter最常用的取样器http请求需要用到的信息头管理器做了很好的解 ...
- Jmeter(三十四)_Beanshell解析并提取json响应
1:前置条件 将fastjson-1.2.49.jar包置于jmeter的lib目录下,并将该jar包添加到测试计划的Library中:否则会报:Typed variable declaration ...
- Jmeter(十四)Logic Controller 之 If Controller
If Controller---如果控制器:属于逻辑判断类型的组件,其实学过代码的都知道if--else,while等都是常用的逻辑判断关键词,Jmeter也提供了逻辑判断--If Controlle ...
- jmeter(十四)解读聚合报告
一个每天1000万PV的网站需要什么样的性能去支撑呢?继续上一篇,下面我们就来计算一下,前面我们已经搞到了一票数据,但是这些数据的意义还没有说.技术是为业务服务的,下面就来说说怎么让些数据变得有意义. ...
- Jmeter(十四)取样器之JDBC Request
在接口测试中,需要与数据库进行交互,这时候需要用到JDBC Request取样器. JDBC Request可以向数据库发送一个请求(sql语句),一般它需要配合JDBC Connection Con ...
- Jmeter(二十四) - 从入门到精通 - JMeter函数 - 中篇(详解教程)
1.简介 在性能测试中为了真实模拟用户请求,往往我们需要让提交的表单内容每次都发生变化,这个过程叫做参数化.JMeter配置元件与前置处理器都能帮助我们进行参数化,但是都有局限性,为了帮助我们能够更好 ...
- Jmeter(五十四) - 从入门到精通高级篇 - 如何在linux系统下运行jmeter脚本 - 上篇(详解教程)
1.简介 上一篇宏哥已经介绍了如何在Linux系统中安装Jmeter,想必各位小伙伴都已经在Linux服务器或者虚拟机上已经实践并且都已经成功安装好了,那么今天宏哥就来介绍一下如何在Linux系统下运 ...
随机推荐
- [NewLife.XCode]功能设置
NewLife.XCode是一个有10多年历史的开源数据中间件,由新生命团队(2002~2019)开发完成并维护至今,以下简称XCode. 整个系列教程会大量结合示例代码和运行日志来进行深入分析,蕴含 ...
- js 日期格式 转换 yyyy-MM-dd
之前js获取到数据库的Date,总是显示成: 后来知道是js 的Date 格式不能直接转换常用的yyyy-MM-dd 的格式 Date.prototype.yyyymmdd = function () ...
- MySQL中字段字符集不同导致索引不能命中
今天写了一个sql,其中涉及的表中的数据量都差不多为50w左右,查询发现用了8s.这个只是测试服上数据,放到正式服上,肯定一运行就挂了. SELECT Orders. NO, GuidNo, Orde ...
- OJ:访问 const 成员函数问题
Description 补足程序使得其输出结果是: 40 #include <iostream> #include <string> using namespace std; ...
- lua的table元类
Lua中提供的元表是用于帮助Lua数据变量完成某些非预定义功能的个性化行为,如两个table的相加.假设a和b都是table,通过元表可以定义如何计算表达式a+b.当Lua试图将两个table相加时, ...
- [转]docker之Dockerfile实践
本文转自:https://www.cnblogs.com/jsonhc/p/7767669.html 上一篇介绍了Dockerfile中使用的指令,现在开始进行指令实践 先查看下本地的镜像,选一个作为 ...
- [转]angular使用Md5加密
本文转自:https://www.cnblogs.com/waitingbar/p/7527928.html 一.现象 用户登录时需要记住密码的功能,在前端需要对密码进行加密处理,增加安全性 二解决 ...
- [转]PHP时区/MySql时区/Linux时区
本文转自:https://blog.csdn.net/watermelonmk/article/details/82669062 问题背景:手头上有个国外的项目,为了所谓的国际化,得将时区修改至[美国 ...
- 第一册:lesson sixty seven。
原文: The weekend. A:Hello , were you an tht butcher's? B:Yes I was. A:Were you at the butcher's too? ...
- C#中saveFileDialog(另存为)保存图片文件
弹出另存为提示框保存图片文件: //用户自由选择指定路径保存文件 SaveFileDialog savedialog = new SaveFileDialog(); ...