对Linux进行压力测试

本文,我们简单的介绍两款在Linux中于对系统的CPU、IO、内存、负载、磁盘等进行压力测试的工具。

CPU测试

在Linux中,我们用fio这款工具来对CPU进行压力测试。

安装

Centos

yum install fio

debian

apt-get install fio

对Linux进行压力测试

​使用帮助:

命令 说明
direct=1 测试过程绕过机器自带的buffer,使测试结果更真实
rw=randwread 测试随机读的I/O
rw=randwrite 测试随机写的I/O
rw=randrw 测试随机混合写和读的I/O
rw=read 测试顺序读的I/O
rw=write 测试顺序写的I/O
rw=rw 测试顺序混合写和读的I/O
bs=4k 单次io的块文件大小为4k
bsrange=512-2048 同上,提定数据块的大小范围
size=5g 本次的测试文件大小为5g,以每次4k的io进行测试
numjobs=30 本次的测试线程为30
runtime=1000 测试时间为1000秒,如果不写则一直将5g文件分4k每次写完为止
ngine=psync io引擎使用pync方式,如果要使用libaio引擎,需要yum install l
rwmixwrite=30 在混合读写的模式下,写占30%
group_reporting 关于显示结果的,汇总每个进程的信息

示例

向磁盘写一个 1G 文件,10 线程,随机读 2分钟

fio -filename=/tmp/test_randread -direct=1 -iodepth 1 -thread -rw=randread -ioengine=psync -bs=16k -size=1G -numjobs=10 -runtime=120 -group_reporting -name=mytest
对Linux进行压力测试
效果如上

CPU测试

我们可以用stress这款工具来完成对目标CPU性能的测试。

安装

yum install stress

常用命令

命令 说明
-c 产生 N 个进程
-m 产生 N 个进程,每个进程不断分配和释放内存
-d 产生 N 个不断执行 write 和 unlink 函数的进程
-t 在 N 秒后结束程序
-q 程序在运行的过程中不输出信息
-n 输出程序会做什么而并不实际执行相关的操作
-v –verbose 显示详细的信息

示例

压满6个cpu,执行100秒(–timeout可以直接用–t)

stress --cpu 6 --timeout 100

对Linux进行压力测试使用另一个终端工具登录被测服务器,使用top命令查看系统状况

对Linux进行压力测试

磁盘及I/O测试

新增6个I/O进程,1个写进程,每次写1000M文件块,测试100秒

stress --io 6 -d 1 --hdd-bytes 1000M -t 100
对Linux进行压力测试

更多精彩文章 欢迎关注我们

原文始发于微信公众号(kali笔记):对Linux进行压力测试

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/178222.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!