性能学习笔记(2)---有效应用程序性能的基本原则

本文介绍了性能测试的重要性和基本原则,包括获取性能需求、选择合适的测试工具、设计测试环境及目标等。并详细阐述了关键性能指标及其在测试过程中的作用。

性能测试箴言:

  在应用程序的生命周期中,应尽早建立性能测试意识。

获取性能需求

  性能相关的需求可以定义为“非功能性需求”。

  对于任何一个新项目,都应该问问以下的这些问题:

  • 应用程序部署后需要支持多少最终用户? 6个月后? 12个月后?2年后呢? 
  • 这些用户分布在哪里?他们如何与系统建立连接的?
  • 应用程序部署后有多少同时在线的用户?6个月后? 12个月后?2年后呢?

  这些问题的答案将会引出其他一些问题,比如:

  • 对于每个应用程序,我需要多少台服务器?这些服务器的配置是什么?
  • 我们需要提供什么类型的网络基础设施? 

  在实施有效的性能测试策略之前,需要解决很多问题,当然,所谓性能测试,可不仅仅是创建负载,并观察系统响应这么简单的事情。应该重点包含以下这些内容:

  • 选择一个合适的性能测试工具
  • 设计一个合适的性能测试环境
  • 设置切合实际的测试性能目标
  • 确保和编写被测应用程序足够稳定
  • 做到代码冻结
  • 确定和编写关键业务脚本。
  • 提供高质量、足够的测试数据。
  • 确保准确的性能测试设计。
  • 确定监控服务器和网络的关键性能指标(KPI)
  • 安排有足够的时间进行有效的性能测试

 关键性能指标

  • 可用性或正常运行时间:应用程序必须在任何时候对最终用户都是可用的,除非在计划的维护阶段,在运行过程中并发或吞吐量方面必须达到指标
  • 并发性、扩展性和吞吐量
  • 响应时间:当用户数量增加时,一般总是会增加一些响应时间,但是随着负载的增加,不应该出现阻塞的情况。
  • 网络容量: 数据量(在网络上传输的数据量)/数据吞吐量(在网络上传送的数据流量)/数据错误率
  • 服务器容量:CPU/MEMORY/磁盘I/O /磁盘空间

  一个好的经验法则是在预计投入使用的并发数和吞吐量指标基础上增加10%。这样测试就可以超出预期的要求

  确保在性能测试过程中应用程序足够稳定

  评估应用程序是否适合进行性能测试:

  • 大数据量展性
  • 执行效率不佳的SQL语句
  • 应用程序的未知错误

  做到代码冻结,保持代码版本的一致性,对于性能测试来说是至关重要的。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值