发表于: 2019-11-09 18:46:50
0 571
今天完成的事情:
性能测试的标准
明天计划的事情:
遇到的问题:
暂无
收获:
性能测试目的:
验证改进性能效果,需要和以前的测试结果进行比对;
新的业务上线,验证新系统能够满足系统的上线指标。
验证系统稳定性;
验证系统的架构是否存在瓶颈。
性能测试目标:
1、 系统新上线、测试明确的数字标准对比情况下,验证系统是否可以上线。测试系统的极限,如:系统某些资源已经耗尽,CPU、句柄、内存、数据库出现大量的slow query、或者系统有些处理已经变量)或者证明系统能否根据硬件水平扩展的。
2、 没有可以比较的测试结果,但是产品已经上线一段时间(一般3个月以上),有一些运营数据,则分析运营数据来作为比对基准,只要测试系统达到3个月内系统并发峰值的4倍就可以认为是可以接受的。(如果是接口为测试对象,则需要混合主要的接口来进行性能测试)
3、 有以往测试结果进行对比,只要证明类似的测试条件下,此次的结果比以往的测试结果更好即可(每秒处理个数更多、单次请求的处理速度更快等)
4、 开发人员提供经验值作为对比的基准,则被测对象只需要证明满足开发人员提出的经验值。
一般出现瓶颈点:
硬件上的性能瓶颈:
一般指的是CPU、内存、磁盘I/O 方面的问题,分为服务器硬件瓶颈、网络瓶颈(对局域网可以不考虑)、服务器操作系统瓶颈(参数配置)、中间件瓶颈(参数配置、数据库、web服务器等)、应用瓶颈(SQL 语句、数据库设计、业务逻辑、算法等)。
应用软件上的性能瓶颈:
一般指的是应用服务器、web 服务器等应用软件,还包括数据库系统。
例如:中间件weblogic 平台上配置的JDBC连接池的参数设置不合理,造成的瓶颈。
应用程序上的性能瓶颈:
一般指的是开发人员新开发出来的应用程序。
例如,程序架构规划不合理,程序本身设计有问题(串行处理、请求的处理线程不够),造成系统在大量用户方位时性能低下而造成的瓶颈。
操作系统上的性能瓶颈:
一般指的Linux等操作系统,我们用的是CentOS
例如,在进行性能测试,出现物理内存不足时,虚拟内存设置也不合理,虚拟内存的交换效率就会大大降低,从而导致行为的响应时间大大增加,这时认为操作系统上出现性能瓶颈。
网络设备上的性能瓶颈:
一般指的是防火墙、动态负载均衡器、交换机等设备。
例如,在动态负载均衡器上设置了动态分发负载的机制,当发现某个应用服务器上的硬件资源已经到达极限时,动态负载均衡器将后续的交易请求发送到其他负载较轻的应用服务器上。在测试时发现,动态负载均衡器没有起到相应的作用,这时可以认为网络瓶颈。
评论