为什么不用loadrunner,lonadrunner免费最大并发用户50,再往上就要买license了。

性能输出结果不是bug

假如调试脚本没有出错,但运行脚本时,可能前期没有问题,但到后期偶尔/持续出现报错,我们不会去定位其出错位置或分析原因,我们只会认定是服务器达到某个用户数时,处理能力达到极限。

当一个项目/某个接口从来没有做过性能测试,可以把第一次获取的指标值作为基准值。以后获取的性能指标可以对比基准值,判断服务器性能是变好还是变坏。(综合考虑)

性能指标:

1.响应时间(RT)

2.最大并发用户

3.每秒处理事务数(TPS)

4.资源利用率:CPU,内存,网络......

5.hps(每秒点击数hit per seconds)

6.tps

7.qps

8.并发:

  狭义:同一时间做相同事情

  广义:同一时间做不同事情,混合场景

9.并发数:单位时间内向服务器发起请求的用户数 virtual user。即Jmeter里的线程数

10.并发用户数:用于模拟真实用户向服务器发起请求的性能测试虚拟用户数量

系统用户数:只要访问过系统的用户,可能含一次性访问的用户(注册后不再访问也算系统用户数)

在线用户数:当前正访问系统的用户,不一定有压力(打开页面放着没有发起请求也算在线用户)

11.响应时间:从发起请求到收到请求响应的时间

网络传输时间  T1, T4

服务器处理时间 T2, T3

12.吞吐量\吞吐率 (事务/s  kb/s)====== 衡量网络的重要指标

  吞吐量:事务数

  吞吐率:数据量

13.TPS(Transaction per second)====== 最主要的性能指标

  服务器每秒通过事务数

  服务器处理事务数

当网络没有瓶颈时,吞吐量的值=TPS值

14.资源利用率

  资源(看综合使用率,而不是单独的):CPU、内存、磁盘、I/O(换入换出?网卡?)

负载测试:逐步增加并发用户数,发起请求,找到系统的拐点区间。

压力测试:通过一定并发用户数,持续比较长的时间请求,查看服务器的稳定性

查找最大并发用户数方法:先查找出现拐点的并发用户区间,在从区间放大并发数查找具体的最大并发用户数。举例从0个用户开始,每秒增加10个,当用户达到50-60时,性能指标出现拐点,则可以定位为最大并发用户区间在50-60之间,然后在50-60之间连续每次增加1个用户,查看在具体某个值时性能指标下降,该值则为最大并发用户数

在不知道最大并发用户数是多少时做压力测试(稳定性),需先用负载测试得到最大用户数,再去做压力测试。用小于或等于最大用户数做压力测试,不一定是用最大用户数来做。运行一次压力测试的时间要以小时为单位。

什么项目需要做性能测试?

1.外包项目 甲方要求

2.涉及生命财产安全

3.大型新系统(新换旧系统)

4.核心系统

5.架构调整

6.业务剧增(如电商)

7.重大缺陷修复

日均访问量 500w需要了解清楚这里的日均是以8小时算,还是24小时还是多少......

日均访问量 ÷  [时间(8小时?24小时)* 360]秒  = 服务器每秒接收的请求数

TPS=人数 * 每人每秒请求次数

性能测试的基本原则:

首先 单接口 再多接口

然后 多接口构成业务\模块

然后 多业务混合

然后 再系统

最后 全链路

性能测试的必备条件:

1.独立服务器 - 跟生产环境硬件资源相同、软件配置相同的服务器

  生产环境不能用于性能测试。

2.独立网络 - 在同一个局域网

  不能用无线网络

Jmeter- 笔记1 - 理论知识的更多相关文章

  1. [笔记]GBDT理论知识总结

    一. GBDT的经典paper:<Greedy Function Approximation:A Gradient Boosting Machine> Abstract Function ...

  2. grunt学习笔记1 理论知识

    你需要检查js语法错误,然后再去压缩js代码.如果这两步你都去手动操作,会耗费很多成本.Grunt就能让你省去这些手动操作的成本. “—save-dev”的意思是,在当前目录安装grunt的同时,顺便 ...

  3. 大数据学习笔记——HDFS理论知识之编辑日志与镜像文件

    HDFS文件系统——编辑日志和镜像文件详细介绍 我们知道,启动Hadoop之后,在主节点下会产生Namenode,即名称节点进程,该节点的目录下会保存一份元数据,用来记录文件的索引,而在从节点上即Da ...

  4. Winsock网络编程笔记(4)----基本的理论知识

    前面的笔记记录了Winsock的入门编程,领略了Winsock编程的乐趣..但这并不能算是掌握了Winsock,加深理论知识的理解才会让后续学习更加得心应手..因此,这篇笔记将记录一些有关Winsoc ...

  5. 线程概念( 线程的特点,进程与线程的关系, 线程和python理论知识,线程的创建)

    参考博客: https://www.cnblogs.com/xiao987334176/p/9041318.html 线程概念的引入背景 进程 之前我们已经了解了操作系统中进程的概念,程序并不能单独运 ...

  6. python 全栈开发,Day41(线程概念,线程的特点,进程和线程的关系,线程和python 理论知识,线程的创建)

    昨日内容回顾 队列 队列 : 先进先出.数据进程安全 队列实现方式: 管道 + 锁 生产者消费者模型 : 解决数据供需不平衡 管道 双向通信 数据进程不安全 EOFError: 管道是由操作系统进行引 ...

  7. 小D课堂 - 新版本微服务springcloud+Docker教程_3-02CAP理论知识

    笔记 2.分布式应用知识CAP理论知识     简介:讲解分布式核心知识CAP理论 CAP定理:             指的是在一个分布式系统中,Consistency(一致性). Availabi ...

  8. js中函数的一些理论知识

      函数的一些理论知识 1. 函数:                执行一个明确的动作并提供一个返回值的独立代码块.同时函数也是javascript中的一级公民(就是函数和其它变量一样). 2.函数的 ...

  9. 用VC进行COM编程所必须掌握的理论知识

    一.为什么要用COM 软件工程发展到今天,从一开始的结构化编程,到面向对象编程,再到现在的COM编程,目标只有一个,就是希望软件能象积方块一样是累起来的,是组装起来的,而不是一点点编出来的.结构化编程 ...

  10. 图形学理论知识 BRDF 双向反射分布函数(Bidirectional Reflectance Distribution Function)

    图形学理论知识 BRDF 双向反射分布函数 Bidirectional Reflectance Distribution Function BRDF理论 BRDF表示的是双向反射分布函数(Bidire ...

随机推荐

  1. Jsoup-基于Java实现网络爬虫-爬取笔趣阁小说

    注意!仅供学习交流使用,请勿用在歪门邪道的地方!技术只是工具!关键在于用途! 今天接触了一款有意思的框架,作用是网络爬虫,他可以像操作JS一样对网页内容进行提取 初体验Jsoup <!-- Ma ...

  2. c协程库libco几点体会

    https://www.cnblogs.com/dearplain/p/9820913.html 这里说的是Tencent开源的libco. libco的用途和依赖 主要还是c/c++服务端,相比li ...

  3. 【MySQL】实现线上千万数据表添加字段操作以及缓存刷新

    需求背景: 由于业务需求,需要在线上用户表添加渠道字段,用于区分不同渠道注册的用户,目前该表有20+个字段,8个索引 线上用户数据大概1500W左右,需要不停机增加数据库字段,同时需要刷新Redis缓 ...

  4. 【Java集合】为什么HashMap的长度是2的N次幂?

    这个问题应该倒过来思考,HashMap的长度是2的N次幂,有什么优势? 在HashMap的putVal()方法中,为了确定插入元素在table[]数组中的下标位置,使用的与(&)运算来计算 如 ...

  5. 从苏宁电器到卡巴斯基第15篇:我在苏宁电器当营业员 VII

    我们苹果的倒班制度 当年我在苏宁的时候,实行的是单休制度,而且只能选择在周一到周五其中的某一天,因为周六周日顾客比较多,是不允许休息的.尽管是单休,但并不表示我们在上班的时候每天都要完完整整地上八小时 ...

  6. PE文件格式偏移参考

    在进行PE文件格式病毒分析的时候,经常要使用到PE文件格式的解析,尤其是对LoadPE形式的病毒的分析,经常要查看PE文件格式的偏移,特地从博客<PE文件格式的偏移参考>中转载收录一份,之 ...

  7. UVA11054Gergovia的酒交易

    题意:       有n个村庄,每个村庄要么买酒要么买酒,负数是买酒,整数是买酒,题目保证所有的数字想加和为0,保证有解,然后每一个村庄往相邻的村庄运k坛酒的花费是k,问满足所有的村庄的最小花费是多少 ...

  8. 自定义Tomcat部署目录

    1.创建配置文件 在Tomcat安装目录中conf-->Catalina-->localhost目录下,创建项目访问请求路径.xml文件 内容如下: <Context path=&q ...

  9. FileInfo & DirectoryInfo

    这节讲两个实例类,FileInfo和DirectoryInfo两个类,用于操作某个具体的文件或者目录. FileInfo:     FileInfo不同于File,它是一个实例类,有一个string类 ...

  10. redis中keys命令带来的线上性能问题

    起因 下午接到运维反馈,生产redis有个执行keys的命令请求太慢了,要两三秒才能响应 涉及命令如下: KEYS ttl_600::findHeadFootData-15349232-*-head ...