概念:
1、性能: 事务、物品的某些特性的评价值。 时间角度、处理能力
2、软件性能测试: 是用一定的技术,找出或验证某个性能指标值的测试。负载测试和压力测试都属于性能测试,两者可以结合进行。
3、压力测试的目的是:验证系统的稳定性
4、负载测试:测试系统的能力是多少
负载测试是一个分析软件应用程序和支撑架构、模拟真实环境的使用,从而来确定能够接收的性能过程。
压力测试(Stress Testing)是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。
并发性能测试的目的主要体现在三个方面:以真实的业务为依据,选择有代表性的、关键的业务操作设计测试案例,以评价系统的当前性能;
有人说压力测试 是强度测试 这个 是因为他的英文单词 翻译过来 两个是相同的 所以就有人这么说了
企业中 压力测试 是来验证服务器稳定性的 做了长时间高负荷的测试 你服务都抗住了 没有奔溃 没有宕机 还能提供服务 说明你的服务器是稳定
企业中 强度测试 其实是找服务器短板的 软件里面的强度测试,就是 我特意把资源调低,我就要找出我程序中 最弱的地方
性能指标:
1、响应时间
响应时间是最能反应服务器性能的指标之一,也是用户最关心的业务体验。比如登录某个商城网站时,只消耗1s钟。在进行性能测试时,是通过对事务响应时间(Transaction Response Time)来分析服务器的响应速度。
(一般响应时间在3s内,用户会感觉比较满意。在3s~8s之间用户勉强能接受,大于8s用户就可能无法接受,从而刷新页面或者离开,仅供参考)
2、吞吐量
吞吐量表示单位时间内能够完成的事务数量,因此也被称为每秒事务数(Transaction Per Second),计算方式是完成的事务数除以时间。
3、服务器资源占用
服务器资源占是指在负载情况下,系统的资源利用率。资源占用越低,说明系统越优秀。例如,cpu的占用率、内存使用率、查询Cache命令率、磁盘I/O读写速率等。
性能测试最基本要考虑以下几点:
1、时间特性,主要指的是软件产品的事物响应时间(用户发出请求到收到应答的这段时间)
2、资源利用率,包括:cpu、内存、网络、硬盘、虚拟内存(如Java虚拟机)
3、服务器可靠性,指服务器能在相对高负载情况下持续的运行
4、可配置优化性,指服务器配置优化、业务逻辑优化、代码优化等
总结:
1、硬件上的性能瓶颈:
一般指的是CPU、内存、磁盘读写等的瓶颈,为服务器硬件瓶颈。
2、应用软件上的性能瓶颈:
一般指的是服务器操作系统瓶颈(参数配置)、数据库瓶颈(参数配置)、web服务器瓶颈(参数配置)、中间件瓶颈(参数配置)等
3、应用程序上的性能瓶颈:
一般指的是开发人员,开发出来的应用程序(如sql语句、数据库设计、业务逻辑、算法等)。
4、操作系统上的性能瓶颈:
一般指的是Windows、linux等操作系统,如出现物理内存不足时,或虚拟内存设置不合理(虚拟内存设置不合理,会导致虚拟内存的交换率大大降低,从而导致行为的响应时间大大增加,可以认为在操作系统上出现了性能瓶颈)。
5、网络设备上的性能瓶颈:
一般指的是防火墙、动态负载均衡器、交换机等设备。
性能瓶颈原因定位十分复杂,需抽丝剥茧逐一排除,以上信息仅供参考。
原文地址:https://www.cnblogs.com/momoon/p/12358459.html