微信号:grzlwx

介绍:光荣之路官方资讯

什么是性能瓶颈?

2015-09-23 23:03 光荣之路



在性能测试中,总会用到“性能瓶颈”这个词,也就把它当成基本的一个词汇了,从没想过它到底是个什么东西。今天忽然有人问道什么是“性能瓶颈”,虽然勉强能列举一些例子来说明它,但总不是太令人满意,所以就总结一下。

首先得说明“瓶颈”的意思。瓶颈,通俗地说,就是一个瓶子的脖子,就是整个系统最薄弱的环节。好比一个桶,能装多少水取决于最短的那块木板,其它的木板再长也没用,那么我们就可以认为这块短的木板就是这个桶的瓶颈了。

所以性能瓶颈,就是说指限制系统性能的关键因素。

一般包括:

(1)硬件上的性能瓶颈

主要指的是CPU、RAM方面的问题。例如,在进行软件需求分析、概要设计时,确定了在数据库服务器上需要6个CPU、12G内存但是在测试时,发现CPU的持续利用率超过95%,这时可以认为在硬件上出现了性能瓶颈。

(2)应用软件上的性能瓶颈

一般指的是应用服务器、WEB服务器等应用软件,还包括数据库系统。例如,在WEBLogic平台上配置了JDBC连接池的参数,最大连接数为50,最小连接数为5,增加量为10。在测试时发现,当负载增加时,现有的连接数不足,系统会动态生成10个新的连接数,这样导致了交易处理的响应时间大大的增加。
这时可以认为在应用软件上出现了性能瓶颈。

(3)应用程序上的性能瓶颈

一般指的是开发人员新开发出来的应用程序。例如,用Java或者C开发出来的部署在应用服务器上用于用户交易请求处理的应用程序。例如,某个开发员开发了一个缴费处理程序,在测试时发现,这个缴费处理程序在处理用户发过来的并发缴费请求时,只能串行处理,无法并行处理,导致缴费交易的处理响应时间非常长,这时可以认为在应用程序上出现了性能瓶颈。

(4)操作系统上的性能瓶颈

一般指的是Windows、Unix、Linux这些操作系统。例如,在windows系统中,虚拟内存设置的不合理,都指定为C驱提供虚拟内存,在测试时发现当出现物理内存不足时,虚拟内存的交换效果非常不理想,导致交易的响应时间大大增加。这时可以认为在操作系统上出现了性能瓶颈。

(5)网络设备上的性能瓶颈

一般指的是防火墙、动态负载均衡器、交换机等设备。例如,在动态负载均衡器上设置了动态分发负载的机制,当发现某个应用服务器上的硬件资源已经到达极限时,动态负载均衡器将后续的交易请求发送到其它负载较轻的应用服务器上。在测试时发现,动态负载均衡机制没有起到相应的作用,这时可以认为在网络设备上出现了性能瓶颈。
(作者:九天 来源:http://blog.sina.com.cn/s/blog_4ab06e970100937i.html)

(图片来源:http://blog.csdn.net/zhouyou1986/article/details/37346543)


 
            
 
            
 
            
 
           
 
           
 
           
 
           
 
           
 
           
 
           
 
           
 
           
 
           

感谢作者,传播测试知识、技能与正能量!
欢迎来稿,分享你的测试生活!735821166@qq.com

光荣之路软件测试培训

官网:http://www.gloryroad.cn/

微信公众号:gloryroadtrain

性能测试QQ群:415987441
软件测试招聘QQ群: 203715128
自动化3群QQ: 371211499

 
光荣之路 更多文章 今天晚上的 linux 公开课- Awk 编程 7月28日(今天)晚上的 linux 公开课- shell编程 8月4日(今天)晚上的 linux 公开课- shell编程 9月1日(本周一)晚8点半,光荣之路Web自动化系列基础课—javascript第二讲 推荐本好书《与机器赛跑》
猜您喜欢 成为数据分析师的6大学习技能(附详细的工具介绍大图) RStudio又搞出了个大杀器!sparklyr包:实现Spark与R的接口,会用dplyr就能玩Spark MySQL 最佳实践: RDS 只读实例延迟分析 清华人都如此努力,那我们呢? 在Keynote中使用语法高亮的代码