1、什么是软件性能:
一般来说,性能是一种指标,表明软件系统或构件对于其及时性要求的符合程度:其次,性能是软件产品的一种特性,可以用时间来进行度量。
1.1、用户视角的软件性能
从用户的角度来说,软件性能就是软件对用户操作的响应时间。
1.2、管理员视角的软件性能
从管理员的角度来看,软件系统的性能首先表现在系统的响应时间上,这一点喝用户视角一样,还需要关心和系统相关的信息(CPU、内存、服务器、JVM);另外,还要考虑系统具有多大的可扩展性,除了并发的能力;系统可能的最大容量是什么,系统的瓶颈子啊哪里,更换那些设备或是进行那些扩展能提高系统性能;系统在长时间的运行种是否能够稳定,是否能够不间断提供业务服务等
管理员关心的问题 | 软件性能描述 |
服务器的资源使用状况合理吗 | 资源利用率 |
应用服务器和数据库的资源使用状况合理吗 | 资源利用率 |
系统是否能够实现扩展 | 系统可扩展性 |
系统最多能支持多少用户的访问?系统最大的业务处理量是多少 | 系统容量 |
系统性能可能的瓶颈在哪里 | 系统可扩展性 |
更换那些设备能够提高系统性能 | 系统可扩展性 |
系统能否支持7X24小时的业务访问 | 系统稳定性 |
1.3、开发视角的软件性能
开发主要的用户感受——响应时间;也会关心系统的扩展性等管理员关心的内容
开发人员关心的问题 | 问题所属层次 |
架构设计是否合理 | 系统架构 |
数据库设计是否存在问题 | 数据库设计 |
代码是否存在性能方面的问题 | 代码 |
系统种是否有不合理的内存使用方式 | 代码 |
系统种是否有不合理的线程同步方式 | 代码与设计 |
系统种是否有不合理的资源竞争 | 代码与设计 |
2、软件性能的几个术语
以上四种性能指标主要可分为系统资源利用率和系统行为(响应时间、吞吐量等)两个方面。它们之间存在一定的相关性,共同反映出性能的不同方面。比如,响应时间、最大并发用户数、吞吐量和资源利用率可以分别用来衡量软件的及时性、扩充能力和容量、处理能力、运行状态。响应时间越短、承受的并发数越多、吞吐量越大、占用的资源越少,表明系统性能越好,反之性能越差。
原文:https://www.cnblogs.com/waitingzxy/p/11760795.html