网络知识 娱乐 软件的性能指标及评估方法

软件的性能指标及评估方法

1、响应时间
响应时间是指系统对请求作出响应的时间。这个时间是指用户从软件客户端发出请求到用户接收到返回数据的整个过程所需要的时间,包括各种中间件(如服务器、数据库等)的处理时间。
响应时间的绝对值并不能直接反映软件的性能的高低,软件性能的高低实际上取决于用户对该响应时间的接受程度。
客户感受的响应时间 = 客户端响应时间+服务器端响应时间+网络响应时间。
2、系统响应时间和应用延长时间
系统响应时间是指客户端接收到用户请求到客户端接收到服务器发来的数据所需时间。
应用延长时间指客户端接收到网站数据时呈现页面所需的时间。
3、吞吐量
吞吐量是指系统在单位时间内处理请求的数量。对于无并发的应用系统而言,吞吐量与响应时间成严格的反比关系,实际上此时吞吐量就是响应时间的倒数。
4、并发用户量
并发用户量、在线用户量、注册用户量的区别:
并发用户量指现实系统中操作业务的用户量,会对服务器产生压力,在性能测试中称为虚拟用户数(Virtual User);
在线用户量指挂在系统的用户量,只有活动的在线用户才会对服务器产生压力;
注册用户指数据库中存在的用户数。
(1)、用TPS(Transaction Per Second 每秒事务数)估算并发用户量
TPS普通计算:TPS=总请求数/总时间
TPS二八原则计算:TPS=(总请求数80%)/(总时间20%)
并发用户量=TPS*(运行时间+思考时间)
例如:某打卡软件有10万个用户,所有用户在8:30-9:10进行打卡,服务器响应时间0.2s,网络响应时间2s,客户端响应时间0.5s,思考时间为3s
普通估算:
TPS=100000/(4060)=41.7(业务量/秒)
并发用户量=41.7
(0.2+2+0.5+3)=238(人)
二八原则估算:
TPS=10000080%/(406020%)=166.7(业务量/秒)
并发用户量=166.7
(0.2+2+0.5+3)=950(人)
(2)、通过在线活动用户量估算并发用户量
平均并发用户量=平均每天访问的用户数每天用户从登录到退出的时长/考察时间长度
并发用户量峰值=平均并发用户量+平均并发用户量的立方根
例如:某打卡软件有10万个用户,用户从登录到退出的平均时长为2小时,用户在12小时之内会使用该系统,则:
平均并发用户量=100000
2/12=16666.7(人)
并发用户量峰值=16666.7+25.5=16693(人)
(3)、根据系统在线用户量估算并发用户量
并发用户量=系统最大在线用户数的8%到12%
例如:某打卡软件有10万个用户,则
并发用户量=10000010%=10000
(4)、通用估算
并发用户量=(80%影响因子用户总量/统计时间)每人耗费的时间
例如:某打卡软件有10万个用户,统计时间为2小时,则
并发用户量=80%3100000/(2
60
60)5=166.7(人)
5、资源利用率
资源利用率反映的是在一段时间内资源平均被占用的情况,包括CPU利用率、内存利用率、磁盘利用率等。
CPU评估
用TPC-C(Transaction PerMinute每分钟完成多少笔交易)进行服务器评估
TPC-C=典型工作日平均业务交易总量(TASK)80%(80%的业务交易集中在高峰时段)/典型工作日业务交易峰值持续时间(T以分钟为单位)复杂程度因子(s)业务冗余预留(F)/CPU利用率估值(C=75%)
复杂因子:一般复杂事务为6-12,较复杂事务为13-16,高度复杂事务为17-20,建议值为15
例如工作日有10万用户,每个用户进行30次交易,交易峰值持续时间12小时
TPC-C=(100000
30
0.8)/(12
60)101.5/75%=6.7万交易量/分钟
可选择单个服务器CPU达到该指标、或几个服务器集群达到该指标。
内存评估
内存需求=操作系统所占内存(4G)+数据库管理系统所占内存(4G)+Redis服务器所占内存(2G)+Tomcat服务器所占内存(4G)+应用程序所占内存(1G)
合理的内存利用率一般低于50%
内存=(4+4+2+4+1)/50%=30G
磁盘评估
磁盘需求=操作系统所需磁盘(40G)+数据库1年所需磁盘(30G)+数据及文件保存1年所需磁盘(30G)+数据库3年历史数据所需磁盘(90G)+数据及文件保存3年历史数据所需磁盘(90G)+其它(20G)
硬盘空间的利用率一般不超过85%
硬盘=(40+30+30+90+90+20)/85%=352G
网路评估
网络需求=单个用户最大数据量
并发用户量
合理的网络利用率一般低于50%
例如:单个用户每秒最大数据量为1K,并发用户数10000,则
网速=(1000*10000)/50%=20M
6、测试评估
(1)、负载测试;通过自动化测试工具模拟程序或者软件系统在超强负荷条件下,观察系统各项性能指标的变化情况,一般与压力测试共同进行。
(2)、强度测试;指系统在资源条件很差工作环境下的运行情况,如人为限制网络带宽,内存等。
(3)、容量测试;一般指模拟用户不断增加时,确定系统可以处理同时在线的最大用户数量。斜体样式