一、设定性能目标
是否有性能问题?为什么需要调优?
二、执行、分析
“定位到问题”或“发现了瓶颈”:性能不好体现在哪里?
分析原则:
● 具体问题具体分析(这是由于不同的应用系统,不同的测试目的,不同的性能关注点)
● 查找瓶颈时按以下顺序,由易到难。
服务器硬件瓶颈-〉网络瓶颈(对局域网,可以不考虑)-〉服务器操作系统瓶颈(参数配置)-〉中间件瓶颈(参数配置,数据库,web服务器等)-〉应用瓶颈(SQL语句、数据库设计、业务逻辑、算法等)
注:以上过程并不是每个分析中都需要的,要根据测试目的和要求来确定分析的深度。对一些要求低的,我们分析到应用系统在将来大的负载压力(并发用户数、数据量)下,系统的硬件瓶颈在哪儿就够了。
● 分段排除法 很有效
分析的信息来源:
● 1 根据场景运行过程中的错误提示信息
● 2 根据测试结果收集到的监控指标数据
具体分析参考:http://blog.51testing.com/?49159/action_viewspace_itemid_869.html
三、提出调优方案
你要调什么?希望得到什么结果?
同一个问题,可能可以从多个方面进行处理。这就需要考虑到工作量、效果、隐患等多种因素,当然也不排除几种优化共同作用。
eg:一个慢SQL,优化的方式可能是加个索引、绑定缓存、改写SQL、表分区、甚至是升级硬件。
资源争用问题,既可以从配置层面进行优化、减小争用发生的机率,又可以从程序的实现方式上做改变、从源头上避免争用。
四、调优
是否从源头上调优?
eg:如果我已经发现数据库较慢,通过进一步监控又发现了一个cache的spinlock contention这个指标超过了正常的范围。那么我会猜测可能是这块 缓存的争用导致了数据库的运行状况变差,针对这个现象我知道可以通过将cache分区来减少争用,改变配置后再重新测试和监控,这就可以算是一次调优的尝 试。
但如果你只停留在数据库慢的这个层面上,又怎么能进行调优呢?
五、验证
是否得到希望得到的结果?
对原问题的验证,还必须确认对其他部分是否产生了副作用。理论上这就需要在每一次调优尝试后,进行一次足够全面的复测。否则,很容易出现“拆东墙补西墙”的问题。
注意要点:● 每次只改变一处。● 每次改变后进行复测。有效的保留,无效的复原。● 不断的迭代,直到达到预期。
参考:http://www.spasvo.com/news/html/2013219150040.html
分享到:
相关推荐
软件性能测试流程,软件性能测试流程,软件性能测试流程
### 软件性能测试流程概述 #### 一、软件性能的基本概念 **软件性能**是一个涵盖广泛的领域,它不仅涉及系统的执行效率、服务器资源使用情况、系统稳定性、安全性、兼容性、可扩展性,还包括可靠性等多个方面。...
### 大型项目级性能测试流程详解 #### 一、名词解释 在深入了解大型项目级性能测试流程之前,我们先来定义几个关键术语。 **1.1 企业级性能测试** 企业级性能测试是指对大型企业的软件系统进行的全面性能评估。...
### 性能测试流程培训知识点总结 #### 一、性能测试概述 **1.1 性能测试定义** - **概念**: 性能测试是指通过自动化工具模拟多种正常、峰值及异常负载条件来评估系统的各项性能指标。 - **目的**: 确保系统在预期...
规范的性能测试实施流程能够加强测试工作流程控制,明确性能测试各阶段应完成的工作,指导测试人员正确、有序的开展性能测试工作,提高各角色在性能能测试中的工作效率。本次分享的性能测试实施流程是我亲自梳理的...
UWB 性能测试流程介绍 UWB(Ultra-Wideband)是一种短距离、高速率的wireless个人区域网络技术,广泛应用于智能家居、智能交通、智能医疗等领域。随着 UWB 技术的普及,UWB 设备的性能测试变得尤为重要。本文将介绍...
关于性能测试的流程,从开始设定测试对象到最后总结,比较全.
测试流程图 单元测试流程图 性能测试流程图 集成测试流程图 系统测试流程图
根据所给文件《铱云非平台单接口性能测试流程.pdf》的内容,我们可以挖掘出以下知识点: 1. 性能测试的重要性: 性能测试是指通过一系列的技术手段来评估软件系统在特定条件下的性能表现,例如响应时间、吞吐量、...
根据标题“大型软件项目的性能测试流程”及描述中提到的C#大型项目测试流程,我们可以深入探讨这一主题,解析其中的关键知识点。 ### 性能测试基础知识 #### 什么是性能类问题? 性能类问题通常指的是软件在处理...
### 服务器性能测试流程规范详解 #### 一、引言 在现代信息技术环境中,服务器作为支撑各类业务系统的核心基础设施,其性能直接关系到业务的稳定性和用户体验。因此,建立一套科学合理的服务器性能测试流程规范至...
项目级性能测试流程是系统性地在实际或模拟的项目环境中执行这一过程,以确保软件系统能够满足预设的性能指标,如响应时间、吞吐量和资源利用率。 1. **名词解释** - **企业级性能测试**:是指针对大型企业的复杂...
《最新性能测试流程规范》是一份详尽的技术文档,旨在为IT行业的专业人士提供关于性能测试的全面指导。文档首先强调了其目标在于确保性能测试的规范性和有效性,以提升软件系统的稳定性和用户体验。 文档的第1.1...
《软件性能测试流程详解》 软件性能测试是确保系统在高负载和压力下稳定运行的关键环节,它涉及到需求分析、测试设计、实施、分析及优化等多个步骤。以下是对软件性能测试流程的详细阐述。 首先,性能测试的目的是...
性能测试流程的脑图,概述性能测试的主要流程
本文将详细探讨一个完整的软件性能测试流程,包括团队组建、工具选择、测试计划、脚本设计与开发以及测试执行与管理。 首先,测试团队的组建至关重要。一个有效的性能测试团队通常需要包括DBA(数据库管理员)以...