linux下的CPU、内存、IO、网络的压力测试

 要远程测试其实很简单了,把结果放到一个微服务里直接在web里查看就可以了,或者同步到其他服务器上

一、对CPU进行简单测试:

1、通过bc命令计算特别函数

例:计算圆周率

echo "scale=5000; 4*a(1)" | bc -l -q


MATH LIBRARY 
       If bc is invoked with the -l option, a math library is preloaded and the default  scale  is  set  to  20. 
       The  math  functions  will  calculate their results to the scale set at the time of their call.  The math 
       library defines the following functions: 
       s (x)  The sine of x, x is in radians.    正玄函数 
       c (x)  The cosine of x, x is in radians.  余玄函数 
       a (x)  The arctangent of x, arctangent returns radians. 反正切函数 
       l (x)  The natural logarithm of x.  log函数(以2为底) 
       e (x)  The exponential function of raising e to the value x.  e的指数函数 
       j (n,x) The bessel function of integer order n of x.   贝塞尔函数


2、工具二:Super Pi for linux

Super PI是利用CPU的浮点运算能力来计算出π(圆周率),所以目前普遍被超频玩家用做测试系统稳定性和测试CPU计算完后特定位数圆周率所需的时间。
http://www.super-computing.org/
下载页:ftp://pi.super-computing.org/

wget ftp://pi.super-computing.org/Linux/super_pi.tar.gz
tar -xzvf super_pi.tar.gz
./super_pi 20
20为位数。表示要算2的多少次方位,如通常要算小数点后1M位。

二、对内存进行简单测试:

工具:memtester
官方:
http://pyropus.ca/software/memtester/

wget http://pyropus.ca/software/memtester/old-versions/memtester-4.3.0.tar.gz
tar -xzvf memtester-4.3.0.tar.gz
cd memtester-4.3.0
make && make install

用法:Usage: ./memtester [-p physaddrbase [-d device]] <mem>[B|K|M|G] [loops]
例:memtester 1G 5

三、对IO进行简单测试:

1、利用dd来进行测试:

time dd if=/dev/zero of=test bs=1M count=4096 

用top和iostat查看wa%及写硬盘速度

2、使用fio命令进行测试:

FIO是测试IOPS的非常好的工具,用来对硬件进行压力测试和验证,支持13种不同的I/O引擎,
包括:sync,mmap, libaio, posixaio, SG v3, splice, null, network, syslet, guasi, solarisaio 等等。

说明: 
filename=/dev/sdb1 测试文件名称,通常选择需要测试的盘的data目录。 
direct=1 测试过程绕过机器自带的buffer。使测试结果更真实。 
rw=randwrite 测试随机写的I/O 
rw=randrw 测试随机写和读的I/O 
bs=16k 单次io的块文件大小为16k 
bsrange=512-2048 同上,提定数据块的大小范围 
size=5g 本次的测试文件大小为5g,以每次4k的io进行测试。 
numjobs=30 本次的测试线程为30. 
runtime=1000 测试时间为1000秒,如果不写则一直将5g文件分4k每次写完为止。 
ioengine=psync io引擎使用pync方式 
rwmixwrite=30 在混合读写的模式下,写占30% 
group_reporting 关于显示结果的,汇总每个进程的信息。 
此外 
lockmem=1g 只使用1g内存进行测试。 
zero_buffers 用0初始化系统buffer。 
nrfiles=8 每个进程生成文件的数量。

随机读: 
fio --filename=/dev/sda3 --direct=1 --iodepth 1 --thread --rw=randread --ioengine=psync --bs=4k --size=2G --numjobs=10 --runtime=100 --group_reporting --name=mytest 
顺序读: 
fio --filename=/dev/sda3 --direct=1 --iodepth 1 --thread --rw=read --ioengine=psync --bs=4k --size=2G --numjobs=10 --runtime=100 --group_reporting --name=mytest 
随机写: 
fio --filename=/dev/sda3 --direct=1 --iodepth 1 --thread --rw=randwrite --ioengine=psync --bs=4k --size=2G --numjobs=10 --runtime=100 --group_reporting --name=mytest 
顺序写: 
fio --filename=/dev/sda3 --direct=1 --iodepth 1 --thread --rw=write --ioengine=psync --bs=4k --size=2G --numjobs=10 --runtime=100 --group_reporting --name=mytest 
混合随机读写: 
fio --filename=/dev/sda3 --direct=1 --iodepth 1 --thread --rw=randrw --rwmixread=70 --ioengine=psync --bs=4k --size=2G --numjobs=10 --runtime=100 --group_reporting --name=mytest --ioscheduler=noop

3、iozone测试

IOZONE主要用来测试操作系统文件系统性能的测试工具,该工具所测试的范围主要有,write , Re-write, Read, Re-Read, Random Read, Random Write, Random Mix, Backwards Read, Record Rewrite, Strided Read, Fwrite, Frewrite, Fread, Freread, Mmap, Async I/O

使用iozone可以在多线程、多cpu,并指定cpu cache空间大小以及同步或异步I/O读写模式的情况下进行测试文件操作性能;

(0=write/rewrite, 1=read/re-read, 2=random-read/write
3=Read-backwards, 4=Re-write-record, 5=stride-read, 6=fwrite/re-fwrite, 7=fread/Re-fread, 
8=random mix, 9=pwrite/Re-pwrite, 10=pread/Re-pread, 11=pwritev/Re-pwritev, 12=preadv/Re-preadv).

Write: 测试向一个新文件写入的性能。当一个新文件被写入时,不仅仅是那些文件中的数据需要被存储,还包括那些用于定位数据存储在存储介质的具体位置的额外信息。这些额外信息被称作“元数据”。它包括目录信息,所分配的空间和一些与该文件有关但又并非该文件所含数据的其他数据。拜这些额外信息所赐,Write的性能通常会比Re-write的性能低。
Re-write: 测试向一个已存在的文件写入的性能。当一个已存在的文件被写入时,所需工作量较少,因为此时元数据已经存在。Re-write的性能通常比Write的性能高。
Read: 测试读一个已存在的文件的性能。
Re-Read: 测试读一个最 近读过的文件的性能。Re-Read性能会高些,因为操作系统通常会缓存最 近读过的文件数据。这个缓存可以被用于读以提高性能。
Random Read: 测试读一个文件中的随机偏移量的性能。许多因素都可能影响这种情况下的系统性能,例如:操作系统缓存的大小,磁盘数量,寻道延迟和其他。
Random Write: 测试写一个文件中的随机偏移量的性能。同样,有许多因素可能影响这种情况下的系统性能,例如:操作系统缓存的大小,磁盘数量,寻道延迟和其他。
Random Mix: 测试读写一个文件中的随机偏移量的性能。许多因素可能影响这种情况下的系统性能运作,例如:操作系统缓存的大小,磁盘数量,寻道延迟和其他。这个测试只有在吞吐量测试模式下才能进行。每个线程/进程运行读或写测试。这种分布式读/写测试是基于round robin 模式的。最好使用多于一个线程/进程执行此测试。
Backwards Read: 测试使用倒序读一个文件的性能。这种读文件方法可能看起来很可笑,事实上,有些应用确实这么干。MSC Nastran是一个使用倒序读文件的应用程序的一个例子。它所读的文件都十分大(大小从G级别到T级别)。尽管许多操作系统使用一些特殊实现来优化顺序读文件的速度,很少有操作系统注意到并增强倒序读文件的性能。
Record Rewrite: 测试写与覆盖写一个文件中的特定块的性能。这个块可能会发生一些很有趣的事。如果这个块足够小(比CPU数据缓存小),测出来的性能将会非常高。如果比CPU数据缓存大而比TLB小,测出来的是另一个阶段的性能。如果比此二者都大,但比操作系统缓存小,得到的性能又是一个阶段。若大到超过操作系统缓存,又是另一番结果。
Strided Read: 测试跳跃读一个文件的性能。举例如下:在0偏移量处读4Kbytes,然后间隔200Kbytes,读4Kbytes,再间隔200Kbytes,如此反复。此时的模式是读4Kbytes,间隔200Kbytes并重复这个模式。这又是一个典型的应用行为,文件中使用了数据结构并且访问这个数据结构的特定区域的应用程序常常这样做。
许多操作系统并没注意到这种行为或者针对这种类型的访问做一些优化。同样,这种访问行为也可能导致一些有趣的性能异常。一个例子是在一个数据片化的文件系统里,应用程序的跳跃导致某一个特定的磁盘成为性能瓶颈。
Fwrite: 测试调用库函数fwrite()来写文件的性能。这是一个执行缓存与阻塞写操作的库例程。缓存在用户空间之内。如果一个应用程序想要写很小的传输块,fwrite()函数中的缓存与阻塞I/O功能能通过减少实际操作系统调用并在操作系统调用时增加传输块的大小来增强应用程序的性能。
这个测试是写一个新文件,所以元数据的写入也是要的。
Frewrite:测试调用库函数fwrite()来写文件的性能。这也是一个执行缓存与阻塞写操作的库例程。是缓存在用户空间之内。如果一个应用程序想要写很小的传输块,fwrite()函数中的缓存与阻塞I/O功能可以通过减少实际操作系统调用并在操作系统调用时增加传输块的大小来增强应用程序的性能。
这个测试是写入一个已存在的文件,由于无元数据操作,测试的性能会高些。
Fread:测试调用库函数fread()来读文件的性能。这是一个执行缓存与阻塞读操作的库例程。缓存在用户空间之内。如果一个应用程序想要读很小的传输块,fwrite()函数中的缓存与阻塞I/O功能能通过减少实际操作系统调用并在操作系统调用时增加传输块的大小从而增强应用程序的性能。
几个特殊测试:
Mmap:许多操作系统支持mmap()的使用来映射一个文件到用户地址空间。映射之后,对内存的读写将同步到文件中去。这对一些希望将文件当作内存块来使用的应用程序来说很方便。一个例子是内存中的一块将同时作为一个文件保存在于文件系统中。

工具:IOzone
官方:http://www.iozone.org/

wget http://www.iozone.org/src/current/iozone3_429.tar
tar -xvf iozone3_429.tar
cd iozone3_429/src/current
make
make linux-ia64

参数:

-a 用来使用全自动模式。生成包括所有测试操作的报告,使用的块 大小从4k到16M,文件大小从64k到512M

-R 产生execl格式的输出日志。
-b 将产生二进制的execl的日志文件名。
-s 测试的文件大小。
-q 指定最大文件块大小(这里的 -q 64k 包括了4K,8K,16K,32K,64K)
-r 指测试的文件块大小(与-q有别,-r 64k只进行64k的测试)
-a 在希望的文件系统上测试,不过只有-a的话会进行全面测试,要花费很长时间,最好用-i指定测试范围。
-g 指定最大测试文件大小。
-n 指定最小测试文件大小。
-f 指定测试文件的名字,完成后会自动删除(这个文件必须指定在你要测试的那个硬盘中)
-C 显示每个节点的吞吐量。
-c 测试包括文件的关闭时间

-t 指定线程数

-D 对mmap文件使用msync(MS_ASYNC) 。这告诉操作系统在mmap空间的所有数据需要被异步地写到磁盘上。

-G 对mmap文件使用msync(MS_SYNC)。这告诉操作系统在mmap空间的所有数据需要被同步地写到磁盘上。

针对文件系统的测试可以按一下几项执行操作:

例:iozone -a -n 512m -g 4g -i 0 -i 1 -i 5 -f /mnt/iozone -Rb ./iozone.xls

进行全面测试.最小测试文件为512M直到测试到4G.测试read,write,和Strided Read.测试的地方在mnt下。生成Excel的文件

1.多线程下的同步I/O读写测试

分别针对128K,16M,256M,2G文件大小和8进程,64进程,128进程数进行测试

主要测试文件写和重复写、读和重复读、随即读写、后向读、文件内随即点写、大间隔文件点读、文件内的随即点读写等测试项,记录大小1M cpu cache 2048kbyte。

1.1 128k 文件性能测试:

测试命令为:

iozone -s 128k -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 8 -G -o -B -Rb iozone.xls

iozone -s 128k -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 64 -G -o -B -Rb iozone.xls
iozone -s 128k -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 128 -G -o -B -Rb iozone.xls

1.2 16M文件性能测试

测试命令为:

iozone -s 16M -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 8 -G -o -B -Rb iozone.xls
iozone -s 16M -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 64 -G -o -B -Rb iozone.xls
iozone -s 16M -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 128 -G -o -B -Rb iozone.xls

1.3 256M文件性能测试

测试命令为:

iozone -s 256M -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 8 -G -o -B -Rb iozone.xls

iozone -s 256M -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 64 -G -o -B -Rb iozone.xls
iozone -s 256M -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 128 -G -o -B -Rb iozone.xls

1.4 2G文件性能测试

测试命令为:

iozone -s 2G -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 8 -G -o -B -Rb iozone.xls
iozone -s 2G -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 64  -G -o -B -Rb iozone.xls
iozone -s 2G -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 128 -G -o -B -Rb iozone.xls

2.  多线程下的异步I/O读写测试

分别针对128K,16M,256M,2G文件大小和8进程,64进程,128进程数进行测试

主要测试文件写和重复写、读和重复读、随即读写、后向读、文件内随即点写、大间隔文件点读、文件内的随即点读写等测试项。

2.1 128k 文件性能测试:

测试命令为:

iozone -s 128k -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 8 -D -o -B -Rb iozone.xls
iozone -s 128k -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 64 -D -o -B -Rb iozone.xls
iozone -s 128k -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 128 -D -o -B -Rb iozone.xls

2.2 16M文件性能测试

测试命令为:
iozone -s 16M -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 8 -D -o -B -Rb iozone.xls
iozone -s 16M -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 64 -D -o -B -Rb iozone.xls
iozone -s 16M -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 128 -D -o -B -Rb iozone.xls

2.3 256M文件性能测试

测试命令为:

iozone -s 256M -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 8 -D -o -B -Rb iozone.xls
iozone -s 256M -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 64 -D -o -B -Rb iozone.xls
iozone -s 256M -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 128 -D -o -B -Rb iozone.xls

2.4 2G文件性能测试

测试命令为:

iozone -s 2G -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 8 -D -o -B -Rb iozone.xls
iozone -s 2G -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 64 -D -o -B -Rb iozone.xls
iozone -s 2G -i 0 -i 1 -i 2 -i 3 -i 4 -i 5 -i 8 -t 128 -D -o -B -Rb iozone.xls

四、网络测试工具iperf:

Iperf  是一个网络性能测试工具。Iperf可以测试TCP和UDP带宽质量。Iperf可以测量最大TCP带宽,具有多种参数和UDP特性。Iperf可以报告带宽,延迟抖动和数据包丢失。

Iperf使用方法与参数说明

参数说明
-s 以server模式启动,eg:iperf -s
-c host以client模式启动,host是server端地址,eg:iperf -c 222.35.11.23
通用参数
-f [k|m|K|M] 分别表示以Kbits, Mbits, KBytes, MBytes显示报告,默认以Mbits为单位,eg:iperf -c 222.35.11.23 -f K
-i sec 以秒为单位显示报告间隔,eg:iperf -c 222.35.11.23 -i 2
-l 缓冲区大小,默认是8KB,eg:iperf -c 222.35.11.23 -l 16
-m 显示tcp最大mtu值
-o 将报告和错误信息输出到文件eg:iperf -c 222.35.11.23 -o c:\iperflog.txt
-p 指定服务器端使用的端口或客户端所连接的端口eg:iperf -s -p 9999;iperf -c 222.35.11.23 -p 9999
-u 使用udp协议
-w 指定TCP窗口大小,默认是8KB
-B 绑定一个主机地址或接口(当主机有多个地址或接口时使用该参数)
-C 兼容旧版本(当server端和client端版本不一样时使用)
-M 设定TCP数据包的最大mtu值
-N 设定TCP不延时
-V 传输ipv6数据包

server专用参数
-D 以服务方式运行ipserf,eg:iperf -s -D
-R 停止iperf服务,针对-D,eg:iperf -s -R

client端专用参数
-d 同时进行双向传输测试
-n 指定传输的字节数,eg:iperf -c 222.35.11.23 -n 100000
-r 单独进行双向传输测试
-t 测试时间,默认10秒,eg:iperf -c 222.35.11.23 -t 5
-F 指定需要传输的文件
-T 指定ttl值

五、apache ab 压力测试:

ab是Apache超文本传输协议(HTTP)的性能测试工具。 其设计意图是描绘当前所安装的Apache的执行性能, 主要是显示你安装的Apache每秒可以处理多少个请求

ab是Apache超文本传输协议(HTTP)的性能测试工具。 其设计意图是描绘当前所安装的Apache的执行性能, 主要是显示你安装的Apache每秒可以处理多少个请求。

概要

ab [ -A auth-username ] [ -c concurrency ] [ -C cookie-name=value ] [ -d ] [ -e csv-file ] [ -g gnuplot-file ] [ -h ] [ -H custom-header ] [ -i ] [ -k ] [ -n requests ] [ -p POST-file ] [ -P proxy-auth-username ] [ -q ] [ -s ] [ -S ] [ -t timelimit ] [ -T content-type ] [ -v verbosity] [ -V ] [ -w ] [ -x <table>-attributes ] [ -X proxy[] ] [ -y <tr>-attributes ] [ -z <td>-attributes ] [http://]hostname[:port]/path

选项

-A auth-username:password 
对服务器提供BASIC认证信任。 用户名和密码由一个:隔开,并以base64编码形式发送。 无论服务器是否需要(即, 是否发送了401认证需求代码),此字符串都会被发送。 
-c concurrency 
一次产生的请求个数。默认是一次一个。 
-C cookie-name=value 
对请求附加一个Cookie:行。 其典型形式是name=value的一个参数对。 此参数可以重复。 
-d 
不显示"percentage served within XX [ms] table"的消息(为以前的版本提供支持)。 
-e csv-file 
产生一个以逗号分隔的(CSV)文件, 其中包含了处理每个相应百分比的请求所需要(从1%到100%)的相应百分比的(以微妙为单位)时间。 由于这种格式已经“二进制化”,所以比'gnuplot'格式更有用。 
-g gnuplot-file 
把所有测试结果写入一个'gnuplot'或者TSV (以Tab分隔的)文件。 此文件可以方便地导入到Gnuplot, IDL, Mathematica, Igor甚至Excel中。 其中的第一行为标题。 
-h 
显示使用方法。 
-H custom-header 
对请求附加额外的头信息。 此参数的典型形式是一个有效的头信息行,其中包含了以冒号分隔的字段和值的对 (如, "Accept-Encoding: zip/zop;8bit"). 
-i 
执行HEAD请求,而不是GET。 
-k 
启用HTTP KeepAlive功能,即, 在一个HTTP会话中执行多个请求。 默认时,不启用KeepAlive功能. 
-n requests 
在测试会话中所执行的请求个数。 默认时,仅执行一个请求,但通常其结果不具有代表意义。 
-p POST-file 
包含了需要POST的数据的文件. 
-P proxy-auth-username:password 
对一个中转代理提供BASIC认证信任。 用户名和密码由一个:隔开,并以base64编码形式发送。 无论服务器是否需要(即, 是否发送了401认证需求代码),此字符串都会被发送。 
-q 
如果处理的请求数大于150, ab每处理大约10%或者100个请求时,会在stderr输出一个进度计数。 此-q标记可以抑制这些信息。 
-s 
用于编译中(ab -h会显示相关信息)使用了SSL的受保护的https, 而不是http协议的时候。此功能是实验性的,也是很简陋的。最好不要用。 
-S 
不显示中值和标准背离值, 而且在均值和中值为标准背离值的1到2倍时,也不显示警告或出错信息。 默认时,会显示 最小值/均值/最大值等数值。(为以前的版本提供支持). 
-t timelimit 
测试所进行的最大秒数。其内部隐含值是-n 50000。 它可以使对服务器的测试限制在一个固定的总时间以内。默认时,没有时间限制。 
-T content-type 
POST数据所使用的Content-type头信息。 
-v verbosity 
设置显示信息的详细程度 - 4或更大值会显示头信息, 3或更大值可以显示响应代码(404, 200等), 2或更大值可以显示警告和其他信息。 
-V 
显示版本号并退出。 
-w 
以HTML表的格式输出结果。默认时,它是白色背景的两列宽度的一张表。 
-x <table>-attributes 
设置<table>属性的字符串。 此属性被填入<table 这里 >. 
-X proxy[:port] 
对请求使用代理服务器。 
-y <tr>-attributes 
设置<tr>属性的字符串. 
-z <td>-attributes 
设置<td>属性的字符串.

例:ab -c 1000 -n 1000  http://127.0.0.1/sw3560/index.html


This is ApacheBench, Version 2.0.40-dev <$Revision: 1.146 $> apache-2.0
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Copyright 2006 The Apache Software Foundation, http://www.apache.org/

Benchmarking 127.0.0.1 (be patient)
Completed 100 requests
Completed 200 requests
Completed 300 requests
Completed 400 requests
Completed 500 requests
Completed 600 requests
Completed 700 requests
Completed 800 requests
Completed 900 requests
Finished 1000 requests

Server Software:        Apache/2.2.3
Server Hostname:        127.0.0.1
Server Port:            80

Document Path:          /sw3560/index.html
Document Length:        5767 bytes

Concurrency Level:      1000              #并发的用户数
Time taken for tests:   3.85301 seconds   #表示所有这些请求被处理完成所花费的时间总和Complete requests:      1000              
Failed requests:        0
Write errors:           0
Total transferred:      6034000 bytes     #所有请求的响应数据长度总和

HTML transferred:       5767000 bytes     #所有请求的响应数据中正文数据的总和

Requests per second:    324.12 [#/sec] (mean)     #重点:吞吐率,他等于Complete requests / Time taken for tests(相当于 LR 中的 每秒事务数 ,后面括号中的 mean 表示这是一个平均值)

Time per request:       3085.301 [ms] (mean)      #用户平均请求等待时间,他等于Time taken for tests /(Complete requests / Concurrency Level)【相当于 LR 中的 平均事务响应时间】

Time per request:       3.085 [ms] (mean, across all concurrent requests)

#服务器平均请求处理时间他等于Time taken for tests / Complete requests (每个请求实际运行时间的平均值)
Transfer rate:          1909.70 [Kbytes/sec] received
                                                  #请求在单位时间内从服务器获取数据的长度他等于Total transferred / Time taken for tests 这个统计选项可以很好的说明服务器在处理能力达到极限时其出口带宽的需求量
Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0   30  16.6     30      59
Processing:    21  924 975.9    612    3027
Waiting:       20  923 976.0    612    3026
Total:         21  954 987.4    637    3084

Percentage of the requests served within a certain time (ms)
  50%    637
  66%   1437
  75%   1455
  80%   1462
  90%   3068
  95%   3076
  98%   3081
  99%   3083
 100%   3084 (longest request)

#用于描述每个请求处理时间的分布情况,例如:50% 1 50%请求处理时间不超过1秒 (这里所指的处理时间是指:Time per request )


linux下的CPU、内存、IO、网络的压力测试的更多相关文章

  1. [转帖]linux下的CPU、内存、IO、网络的压力测试

    linux下的CPU.内存.IO.网络的压力测试 https://www.cnblogs.com/zhuochong/p/10185881.html 一.对CPU进行简单测试: 1.通过bc命令计算特 ...

  2. [转帖]linux下CPU、内存、IO、网络的压力测试,硬盘读写速度测试,Linux三个系统资源监控工具

    linux下CPU.内存.IO.网络的压力测试,硬盘读写速度测试,Linux三个系统资源监控工具 https://blog.51cto.com/hao360/1587165 linux_python关 ...

  3. linux系统CPU,内存,磁盘,网络流量监控脚本

    前序 1,#cat /proc/stat/ 信息包含了所有CPU活动的信息,该文件中的所有值都是从系统启动开始累积到当前时刻 2,#vmstat –s 或者#vmstat 虚拟内存统计 3, #cat ...

  4. Linux 下的五种 IO 模型

    概念说明 用户空间与内核空间 现在操作系统都是采用虚拟存储器,那么对32位操作系统而言,它的寻址空间(虚拟存储空间)为4G(2的32次方).操作系统的核心是内核,独立于普通的应用程序,可以访问受保护的 ...

  5. linux 下 取进程占用内存(MEM)最高的前10个进程

    # linux 下 取进程占用 cpu 最高的前10个进程ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head # linux 下 取进程占用内存 ...

  6. Linux 下增大tomcat内存

    我的服务器的配置: # OS specific support.  $var _must_ be set to either true or false. JAVA_OPTS="-Xms10 ...

  7. jmeter ---监控服务器CPU, 内存,网络数据

    JMeter如何收集获得服务器cpu,内存,磁盘,网络等相关资源使用率的信息 1. JMeter 自带的Monitor Results 监控 JMeter 自带的Monitor Results 在官网 ...

  8. Linux下查看CPU信息、机器型号等硬件信息命令

    Linux下查看CPU信息.机器型号等硬件信息命令 编写一个bash脚本: vim info.sh #!/bin/bash cat /etc/issue echo "____________ ...

  9. Linux下高cpu解决方案(转载)

    Linux下高cpu解决方案(转载 1.用top命令查看哪个进程占用CPU高gateway网关进程14094占用CPU高达891%,这个数值是进程内各个线程占用CPU的累加值.   PID USER  ...

随机推荐

  1. VS2008中 VB 报错 检索 COM 类工厂中 CLSID 为 {28E68F9A-8D75-11D1-8DC3-3C302A000000} 的组件失败,原因是出现以下错误: 80040154 没有注册类 (异常来自 HRESULT:0x80040154 (REGDB_E_CLASSNOTREG))。

    Resvr32 .net中引用控件的名称 如果注册成功,问题不在出现 但是如果是在x64位的系统中,即使控件注册成功,错误依照提示,是因为大多数第三方写的COM控件,只支持32位的系统, 在VS中找到 ...

  2. HTML5_canvas_填充文本,描边文本

    canvas 文本相关 填充文本 pen.fillText("HelloWorld", 100, 100);        文本的(100, 100) 在文本基线处 文本样式 pe ...

  3. Reward List 赏金列表

    博主昨晚正在刷题,突然手机语音大声提示“微信支付收款到账”,把博主吓了一跳,打开一看,居然收到了第一笔打赏,还是博主最喜欢的数字,老开心了-感谢网友对于博主工作的认可与支持,多谢多谢!不管大家是物质打 ...

  4. js 改变只读属性的值

    console.log(navigator.platform); // Win32 Object.defineProperty(navigator, 'platform', { value: 'cc' ...

  5. Python基础之容器1----字符串和列表

    一.编码: 1.编码只是梳理 2.编码涉及的函数: 3.实例: 字符串内存图 二.字符串 1.定义:由一系列字符组成的不可变序列容器,存储的是字符的编码值. 不可变:指字符串一旦定义,其内存地址就已经 ...

  6. Spark 实现wordcount

    配置完spark之后,使用spark实现wordcount,这一部分完全参考<深入理解Spark:核心思想与源码分析> 依然使用hadoop wordcountTest的那几个txt文件 ...

  7. 【Java】递归递推的应用

    利用阶乘公式来计算组合式: 程序设计思想: 根据公式来计算组合数的大小,从键盘输入n,k的值,设计一个计算阶乘的大小,如果输入的数a为1或0,则直接return 1,否则运用递归,计算a-1的阶乘,直 ...

  8. pta第一次总结

    1).实验代码 include<stdio.h> int main() { int n,i,j,a1,a2,b1,b2,sum,x,k; char c; while(~scanf(&quo ...

  9. 更为复杂C程序的运行时结构

    运行环境 win 10 企业版 1809 17763.194,MinGW V3.14 32位,Bundled V3.13.2,Bundled GDB V8.2. 在C语言中,栈的方向是从高地址向低地址 ...

  10. Head First Python-Python简单处理文件

    前面介绍了自定义格式化输出列表函数printList(),下面再介绍下格式化列表项及列表项的排序. 这里有一组列表数据,记录运动员跑步时间的,要求按照时间大小进行排序.这里每项数据记录的时间格式不一样 ...