码迷,mamicode.com
首页 > 其他好文 > 详细

关于压测的几点说明

时间:2016-12-30 15:25:43      阅读:170      评论:0      收藏:0      [点我收藏+]

标签:top命令   压测   cache   硬盘   内容   mil   拷贝   使用   部分   

1. 首先需要确定压测的基础环境,主要有服务器、网络、磁盘。

服务器CPU主频和缓存大小对于程序执行的快慢有较大影响,一般而言,IO密集型操作缓存的影响更大,CPU密集型操作主频影响更大;服务器CPU核数对多线程程序影响较大,对于高级语言而言,由于可以获取CPU核数,这块不用特殊配置。但对于部分语言如plsql,则确定CPU的核数从而确定执行线程非常重要。由于目前接触到的程序对于占用内存都比较重视,目前没有发现内存对性能影响较大的情况;

网络主要确定带宽,跨网段(机房)需要确定各个链路上网络设备(如火墙)的承载能力;

磁盘可以使用IOPS作为评价标准,机械硬盘,固态硬盘,共享存储,分布式存储,不同存储方案的带宽差别非常大。

确定网络和磁盘的能力,可以通过在不同机器之间拷贝文件的方式来大致确定带宽。

2. 压测监控(linux系统)

一般而言,需要监控的内容主要是CPU、内存、IO,因此常用的命令是top,iostat, vmstat

a. 其中top命令可以关注CPU,内存情况,注意总体CPU使用率较低,不代表应用进程CPU不繁忙,还需要看具体某一个进程CPU执行的情况。

内存占用可通过如下方式判断:

 

  Mem:   3925908k total,  3787840k used,   138068k free,    12716k buffers

 

  Swap:  4063224k total,  2030264k used,  2032960k free,   596756k cached  

 

  内存有问题的情况:free + buffers + cached 综合比较小或者swap free很少。

b iostat命令判断IO的占用情况,如iostat -x -m 5,命令介绍的文章很多;

c vmstat命令可以判断是否有进程阻塞,这对于多线程程序执行情况的判断非常有参考意义;

 

 

关于压测的几点说明

标签:top命令   压测   cache   硬盘   内容   mil   拷贝   使用   部分   

原文地址:http://www.cnblogs.com/wany82075/p/6236894.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!