性能测试流程性能调优

Posted 思课帮IT教育

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了性能测试流程性能调优相关的知识,希望对你有一定的参考价值。


一般系统的瓶颈

 

性能测试调优需要先发现瓶颈,那么系统一般会存在哪些瓶颈:

 

硬件上的性能瓶颈:

 

一般指的是CPU、内存、磁盘I/O 方面的问题,分为服务器硬件瓶颈、网络瓶颈(对局域网可以不考虑)、服务器操作系统瓶颈(参数配置)、中间件瓶颈(参数配置、数据库、web服务器等)、应用瓶颈(SQL 语句、数据库设计、业务逻辑、算法等)。

 

应用软件上的性能瓶颈:

 

一般指的是应用服务器、web服务器等应用软件,还包括数据库系统。

 

例如:中间件weblogic平台上配置的JDBC连接池的参数设置不合理,造成的瓶颈。

 

应用程序上的性能瓶颈:

 

一般指的是开发人员新开发出来的应用程序。

 

例如,程序架构规划不合理,程序本身设计有问题(串行处理、请求的处理线程不够),造成系统在大量用户访问时性能低下而造成的瓶颈。

 

操作系统上的性能瓶颈:

 

一般指的是windowsUNIXLinux等操作系统。

 

例如,在进行性能测试,出现物理内存不足时,虚拟内存设置也不合理,虚拟内存的交换效率就会大大降低,从而导致行为的响应时间大大增加,这时认为操作系统上出现性能瓶颈。

 

网络设备上的性能瓶颈:

 

一般指的是防火墙、动态负载均衡器、交换机等设备。

 

例如,在动态负载均衡器上设置了动态分发负载的机制,当发现某个应用服务器上的硬件资源已经到达极限时,动态负载均衡器将后续的交易请求发送到其他负载较轻的应用服务器上。在测试时发现,动态负载均衡器没有起到相应的作用,这时可以认为网络瓶颈。  

 

性能测试出现的原因及其定位十分复杂,这里只是简单介绍常见的几种瓶颈类型和特征,而性能测试所需要做的就是根据各种情况因素综合考虑,然后协助开发人员\DBA\运维人员一起定位性能瓶颈。

 

 

 

一般性能调优步骤

                                                                          

步骤一:确定问题

 

应用程序代码:在通常情况下,很多程序的性能问题都是写出来的,因此对于发现瓶颈的模块,应该首先检查一下代码。

 

数据库配置:经常引起整个系统运行缓慢,一些诸如oracle 的大型数据库都是需要DBA进行正确的参数调整才能投产的。

 

操作系统配置:不合理就可能引起系统瓶颈。

 

硬件设置:硬盘速度、内存大小等都是容易引起瓶颈的原因,因此这些都是分析的重点。

 

网络:网络负载过重导致网络冲突和网络延迟。

 

步骤二:分析问题

 

当确定了问题之后,我们要明确这个问题影响的是响应时间吞吐量,还是其他问题?是多数用户还是少数用户遇到了问题?如果是少数用户,这几个用户与其它用户的操作有什么不用?系统资源监控的结果是否正常?CPU的使用是否到达极限?I/O 情况如何?问题是否集中在某一类模块中?是客户端还是服务器出现问题?系统硬件配置是否够用?实际负载是否超过了系统的负载能力?是否未对系统进行优化?

 

通过这些分析及一些与系统相关的问题,可以对系统瓶颈有更深入的了解,进而分析出真正的原因。

 

步骤三:确定调整目标和解决方案

 

得高系统吞吐量,缩短响应时间,更好地支持并发。

 

步骤四:测试解决方案

 

对通过解决方案调优后的系统进行基准测试。(基准测试是指通过设计科学的测试方法、测试工具和测试系统,实现对一类测试对象的某项性能指标进行定量的和可对比的测试)

 

步骤五:分析调优结果

 

系统调优是否达到或者超出了预定目标?系统是整体性能得到了改善,还是以系统某部分性能来解决其他问题。调优是否可以结束了。

 

最后,如果达到了预期目标,调优工作就基本可以结束了。


思课帮IT教育基地是由中国电子标准化研究院培训中心授权北京软达启航科技发展有限公司开展的软件培训基地,专注软件人才培训,由多年项目实战经验的老师教授相关课程,就业率100%,入职名企,打造高薪人生。

 

思课帮IT教育基地与上千家企业建立人才供给合作关系,就业率一直居于同业前列,平均就业率高达99.5%,就业单位包括滴滴出行、搜狐视频、中信银行、阿里巴巴、腾讯科技、百度、小米、奇虎科技、中国中车、中核控制科技等知名企业,其中已有上千名学员晋升为测试总监、项目主管乃至CEO,成为软件测试领域的中坚力量。

 

作为中国软件测试培训参与者,我们一直秉持“为学员提供高品质的教学服务” 的核心价值观,坚守教学品质,致力于帮助更多的应届毕业生实现就业,找到满意工作;帮助更多的职场新人突破职业瓶颈,实现职业梦想;帮助更多的用人单位轻松招到软件测试人才,推动企业发展和产业进步。


以上是关于性能测试流程性能调优的主要内容,如果未能解决你的问题,请参考以下文章

性能测试入门--工作流程

性能测试基础知识

性能测试流程分享

性能测试整体认知

性能测试系列-java gc调优

性能测试基础概念1