性能测试基础概念1
性能测试针对系统的性能指标,建立性能测试模型,制定性能测试方案,制定监控策略,在场景条件之下执行性能场景,分析判断性能瓶颈并调优,最终得出性能结果来评估系统的性能指标是否满足既定值
步骤:
1单个用户的TPS计算:通过日志,拉取一个用户的操作记录,记录下来一个事务的操作时间。例如:1个用户,100秒内,完成了一个完整流程,有4个操作(查询商品、填写信息、支付、订单详情),调用了20个接口。
用户级TPS:1 1/100=001TPS。 (1个用户) (1个完成业务)/100s
操作级: 1 4/100=004 TPS (1个用户) (4个操作)/100s
接口级: 1 20/100=02TPS (1个用户) (20个接口)/100s
2多用户的TPS。从生产拉取1天的用户量,记算下平均完成的时间(这会有一个问题就是很多用户没有真实走完一个完整业务,所以这个TPS计算是要注意?为了方便仅做假设每个用户是在100秒内完成)假如有一100万的用户,在1天内完成业务
用户级TPS:1000000 1 1/24/60/60=1157TPS。 1000000 (1个用户) (1个完成业务)/24小时/60分钟/60秒
操作级: 1000000 1 4/24/60/60=4629 TPS 1000000 (1个用户) (4个操作)/24小时/60分钟/60秒
接口级: 1000000 1 20/24/60/60=23148TPS 1000000 (1个用户)(20个接口)/24小时/60分钟/60秒
3峰值时的TPS。 1000人,在1分钟内完成业务
用户级TPS:1000 1 1/60=1667TPS。 1000 (1个用户) (1个完成业务)/60秒
操作级: 1000 1 4/60=6667 TPS 1000 (1个用户) (4个操作)/60秒
接口级: 1000 1 20/60=33333TPS 1000 (1个用户)(20个接口)/60秒
4,怎么计算并发用户数和TPS之间的关系。
假如在jmeter中,完成一个完整的流程5秒钟。
用户级TPS:1 1/5=02TPS。 (1个用户) (1个完成业务)/5s
操作级: 1 4/5=08 TPS (1个用户) (4个操作)/5s
接口级: 1 20/5=4 TPS (1个用户) (20个接口)/5s
5,无停顿(并发用户)相当于多少有停顿的用户(在线用户)
02/001=20 即无停顿TPS/有停顿TPS。
并发度=1/20100% =5%
6压力线程数
a)100万在1天内:1000000的在线TPS/并发TPS=1157/02=5785
b)1000在1分钟内: 1000的峰值TPS/并发TPS=1667/02=8335
7并发用户数的计算
并发用户数=在线用户数×有停顿时间的单线程TPS/无停顿时间的单线程TPS
8并发度:并发度=并发用户/在线用户×100%(取值要在同一时间段)
1抽取业务模型,可以通过日志系统或埋点等手段获取。
2业务模型的作用:一是评估线上的性能;二是为后面的容量测试做准备
也可称之为混合容量性能场景,即将所有业务根据比例加到一个场景中,在数据、软硬件环境、监控等的配合之下,分析瓶颈并调优的过程。
1,业务指标
2,对各业务进行基准性能场景测试,对各业务基线测试,并优化以满足业务性能指标
3,抽取线上业务模型
4,根据业务模型,编写执行脚本,进行容量测试
核心就是时长。在长时间的运行之下,观察系统的性能表现,分析瓶颈并调优的过程
1,根据实际的业务需求设置。如我们每周一个发布周期,平均2个月所有的业务线会发布一次(即服务器重启)。那么我们的稳定性测试的策略应该是以最大TPS,执行7~30天。不可少于7天。但可以多于30天。
2,为什么以容量测试的最大TPS? 如果容量测试下来的最大TPS不能稳定执行,其容量测试的结果又什么意义?
PING命令的用法
1、网络是否稳定,是否延迟,是否丢包,用ping命令都可以看出来!
打开cmdexe,win7直接在开始菜单栏输入cmd按回车键。
2、在输入框输入ping wwwbaidu com -t
请看下面图示内容:
C:\Users\wolf>ping wwwbaiducom
正在 Ping wwwashifencom [11523921027] 具有 32 字节的数据:
来自 11523921027 的回复: 字节=32 时间=34ms TTL=53
来自 11523921027 的回复: 字节=32 时间=28ms TTL=53
来自 11523921027 的回复: 字节=32 时间=35ms TTL=53
来自 11523921027 的回复: 字节=32 时间=31ms TTL=53
11523921027 的 Ping 统计信息:
数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 28ms,最长 = 35ms,平均 = 32ms
上面的信息意思是说,我们向百度服务器发送了4条数据的请求,结果全部收到4条数据包的返回,没有丢失,往返的时间最短为28ms,最长为35ms,平均为32ms。
这就说明我们的网络是稳定的!没有数据丢失!当然一般来说ping 的时间越久越能测试网络的稳定性,一般ping一分钟左右,不丢包,就说明网络很稳定!如果ping期间有Request timed out提示就说明网络有丢包现象,说明网络不稳定,当然ping一分钟左右,如果有2、3条数据包丢失也算比较正常,如果丢失5个数据包以上就不正常了,我们需要先检测网线是否良好,水晶头是否插稳,再来检测网络。如果其他都正常还是丢包就说明网络的来源不稳定,可以及时向网络提供商上门来进行检测或叫客服在后台给我们调试好网络!
3、再在对话框输入: ipconfig/all
这个命令可以看到自己电脑的ip地址,子网掩码,DNS服务器,默认网关。
再来ping下我们的网关:ping 195330254
结果如下图,看出延迟<1ms这说明本地服务是非常通畅的!路由器是没问题的。
4、还想知道ping命令有哪些功能,怎么用?直接在输入框内打一个ping命令。
0条评论