应用负载压力测试
一、概念
1.负载压力测试
在一定的约束条件下(指定的软件,硬件,网络环境),测试系统所能承担的并发用户量,运行时间,数据量以确定系统所能承受的最大负载压力
2.负载压力测试目的
1)在真实环境下检测系统性能,评估系统性能以及服务等级
2)预见系统负载压力承受力,在应用实际部署之前,评估系统性能
3)分析系统瓶颈,优化性能
3.尽早的进行负载压力测试,负载压力测试是性能测试的重要指标
4.负载压力划分
并发性能测试
疲劳强度测试
大数据量测试
5.性能测试
性能评测
评估并报告整个系统性能(真实环境)
对系统未来容量进行评估和规划
性能调优步骤
1.查找形成系统瓶颈和故障的原因
2.进行性能调整和优化
3.评估性能调整的效果
性能评测是性能调优的基础
6.负载测试
通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统所能承受的最大负载量的测试
压力测试
通过逐步增加系统负载,测试系统性能的变化,并最终确定在什么情况下系统性能处于失效的情况,并以此获得系统所能提供的最大服务级别的测试
并发性能测试
是负载测试和压力测试的过程,通过逐步增加负载,直到系统瓶颈或不能接收的性能点,通过综合分析交易执行指标,资源监控指标等来确定系统并发性能的过程,是负载压力测试的重要内容
7.基于方案内容可分为应用在客户端性能,应用在网络性能,应用在服务器上的性能
应用在客户端性能的测试
在客户端模拟大量用户并发执行不同的操作达到实施负载压力的测试
应用在网络性能的测试
主要包括两部分应用网络故障分析,网络应用性能监控
测试的目的是达到:优化性能,预估性能响应时间,确定网络带宽需求,定位应用程序和网络故障
包括的内容:应用监控,关键特性,按会话统计传输负载,应用,会话级,测试延迟是在何时被引用网络的,事务响应时间,系统瓶颈是在哪里出现的,趋势分析
应用在服务器性能的测试
监控的内容主要包括操作系统,数据库,中间件
8.疲劳强度测试(执行一段时间)
日常业务疲劳强度测试 高峰业务疲劳强度测试
9.大数据性能测试
独立数据量测试--针对某个存储传输统计查询进行测试
综合数据量测试--负载测试压力测试疲劳强度测试的综合
10.软件生命周期内的负载压力测试
需求分析焦点位于共享资源以及有限的资源
设计阶段确定负载压力性能指标
开发阶段创建一个负载压力测试的测试环境
验收阶段多等级范围内测试并调优
运行阶段持续监控系统负载压力测试性能指标
11.客户端交易处理指标
并发用户数指标
交易处理指标
平均事务响应时间,每秒事务数,每秒事务总数,事务摘要,事务性能摘要,事务响应时间(负载下),(百分比),(分布)
web请求指标
每秒点击数,点击数摘要,吞吐量,吞吐量摘要,连接数,每秒连接数,每秒ssl连接数,http状态代码摘要,每秒http响应数,每秒下载页面数,每秒重复次数,重复次数摘要
web页面组件组件指标
激活页面细分,页面组件细分,(随时间变化),页面下载时间细分,(随时间细分),第一次缓冲细分时间,(随时间变化),下载组件大小
12.负载压力测试过程
测试计划-需求分析-测试案例制定-测试环境数据工具准备-测试脚本录制编写和调试-场景指定-执行测试-获取测试结果-结果评估测试报告
13.服务器操作系统占用监控指标
磁盘 内存 cpu 进程 文件系统 交换区(SWAp) 安全控制
14.数据库占用监控指标
读写页面的使用情况,超出共享内存缓冲区的操作数,上一轮询期间作业等待缓存区间,共享内存中物理日志和逻辑日志缓存区的使用率,磁盘数据块的使用情况以及数据读写的热点区域,用户事务以及表空间事务,数据库锁资源,关键业务的数据表空间增长,SQL执行情况
15.中间件占用监控指标
以IIS为例
File Cache Hits 静态网络占80%
Web Services Byte totals
Connections refused
Not Found errors
16.故障分析
cpu
内存和高速缓存
配置
应用系统网络问题
磁盘资源问题
数据库服务故障定位
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步