如何判断程序的运行瓶颈

如何判断程序的运行瓶颈,第1张

这种事需要你提供一个运行测试的报告,一切就解决了。

用户反应慢的时候,给一份全天运行的硬件负载其实已经很够了,用户看不懂报告的话,派一个人去解释说明每一项都可能影响哪些软件性能,同时你要反过来给用户建议,让软件开发商提供完美运行的配置需求,此外建议建议用户使用一些性能测试工具去压软件测试负载情况。

运行反应慢有很多可能,cpu,内存,带宽的负载都很低的时候,软件方面的问题还可能是:连接请求失败太多、数据库查询太慢或者程序处理太慢,看给出的配置,应该是windows系统,找一个性能测试方面的人,简单配置一下系统的监控项目,出一个运行报告,在运行的时候监控报告应该给出这些指标:

硬件方面

内存使用数

cpu占用率

硬盘读写速度

网络带宽负载

网络请求封包数

软件方面

web 请求数量

web并发连接数量

web 请求成功与失败比率

web 请求平均响应时间

数据库请求 *** 作数

数据库并发连接数

数据库缓存命中率

数据库 *** 作响应时间

数据库进程负载情况

web server (IIS、Apache、Nginx)进程负载情况

有了这些指标你才能给用户足够的说服力证明在软件负载很大的时候,硬件资源占用还是很低。其中最重要的指标应该是数据库 *** 作响应时间和web平均响应时间,这两个如果在硬件负载不高的时候很慢,绝对就是软件方面原因,至于具体原因要看颗粒度更细的测试报告才能清楚,不过那应该属于软件开发商的事情了。

可以出这种报告的软件很多,系统自带的performent monitor ,LoadRunner,WebLoad,JMeter,MSACT。找一个熟悉性能测试的人出个方案即可,涉及到这些复杂系统应用的事情,上线前没有做过任何可用性/性能测试吗。

问题没说清楚,也不好下定论啊,如果性能测试就压100个用户,在没达到瓶颈的情况,各项指标应该都是平稳的,波动起伏不会太大,只有慢慢增加用户,才会知道瓶颈所在随着用户的增加,下面各值会跟随增加吞吐量,CPU,点击率。。。等事务响应时间(这个系统一般没达到极限是不变的)当事务响应时间开始明显变长,说明系统达到了极限可以是CPU极限,可能是点击率极限,可能是网络极限。。。你继续增加用户了,响应时间变长,吞吐量点击开始明显下降,说明就到瓶颈了,然后在看是什么地方的瓶颈如果单一的吞吐量上不去,也可能是用户访问不多,吞吐量当然上不去


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11296724.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存