Work hard.认真对待每一天
系统瓶颈
上一篇 /
下一篇 2008-10-16 11:26:07
/ 个人分类:?
看下面的试意图,再想想
---- >|-----------D1(口径)-----|<
系 | |
统 | |----------CPU
运 | |
行 |_ _ _ _ _ _|
高 | |
速 | |--------------------RAM
公 >|---D2--|<
路 _ _| |_ _
--- | |
>|--------D3--------|<--------------database
|_ _ _ _ _ |
| |
>|D4|<---------------------net_intertface
| |
以上图所示的是你测试的系统运行时,所要用到的“资源",(假若所有资源都化成统一单位,即D(如高速公路_路宽)),试想如果你配置D1口径的CPU,而你所用的网络速度口径只为D4,那么你的整个系统的处理速度也就仅为D4,D1口径的CPU等大于D4的系统资源都被浪费掉了,这时,我想网络速度就是所谓的系统”瓶颈";但它不是绝对的,如果你把网络速度D4提高到大于D2的水平,那么这时你的系统的瓶颈又变成了RAM;依次类推.........
所以进行性能测试,首先你要弄清你的系统运行所需要那些资源;然后添加相应的资源计数器,进行计录它们的数值即我所谓的口径;然后进行对比,就会发现影响系统的到底是“高速公路上那一段堵车",然后再找到这个点,进行分析处理;如果是cpu达到90%以上,而其它很低,换个速度快的cpu试试;如果访问database响应时间很长,换个数据库或更改数据库访问算法再试试等等(像测试结果中的一些http404等类似的错误都是一种错误特征);如果整个系统资源都没有超过警戒线,如果此时已经满足了你们的事先设计的系统运行资源指标和并发数,ok性能测试通过,但如果还没满足,增加并发量;
大概就是这样,呵呵,偶的一些看法.
收藏
举报
TAG: