目前,对软件性能最普遍的理解就是软件处理的及时性。但其实,从不同的系统类型,以及不同的视角去讨论软件性能,都会有所区别。
非交互式的应用,比如典型的电信和银行后台处理系统,响应时间关注更多的是事件处理的速度,以及单位时间的事件吞吐量。
2. 对同一个系统来说,不同的对象群体对软件性能的关注点和期望也不完全相同,甚至很多时候是对立的。这里,不同的对象群体可以分为四大类:终端用户、系统运维人员、软件设计开发人员和性能测试人员。
图1 衡量软件性能的四个维度
终端用户是软件系统的最终使用者,他们对软件性能的反馈直接决定了这个系统的应用前景;而软件开发人员、运维人员、性能测试人员,对性能测试的关注点则直接决定了一个系统交付到用户手中的性能。只有全面了解各类群体对软件系统的不同需求,才能保证这个系统具有真正高可靠的性能,下面分别作介绍。
终端用户眼中的软件性能
从终端用户(也就是软件系统使用者)的维度来讲,软件性能表现为用户进行业务操作时的主观响应时间。具体来讲就是,从用户在界面上完成一个操作开始,到系统把本次操作的结果以用户能察觉的方式展现出来的全部时间。对终端用户来说,这个时间越短体验越好。
这个响应时间是终端用户对系统性能的最直观印象,包括了系统响应时间和前端展现时间。
系统响应时间,反应的是系统能力,又可以进一步细分为应用系统处理时间、数据库处理时间和网络传输时间等;
前端展现时间,取决于用户端的处理能力。
从这个角度来看,你就可以非常容易理解性能测试为什么会分为后端(服务器端)的性能测试和前端(通常是浏览器端)的性能测试了。
系统运维人员眼中的软件性能
从软件系统运维(也就是系统运维人员)的角度,软件性能除了包括单个用户的响应时间外,更要关注大量用户并发访问时的负载,以及可能的更大负载情况下的系统健康状态、并发处理能力、当前部署的系统容量、可能的系统瓶颈、系统配置层面的调优、数据库的调优,以及长时间运行稳定性和可扩展性。
原文地址:https://time.geekbang.org/column/article/14577;本文为读书笔记,如有侵权,告知删除。
原文:https://www.cnblogs.com/miaojjblog/p/10606485.html