openEuler性能测试常用工具-fio开源压力测试工具
今天我要给大家安利一个超级强大的硬盘IO性能测试工具——FIO!🌟
💻 什么是FIO?
FIO,全称Flexible I/O Tester,是一个开源的压力测试工具,专门用来测试硬盘的IO性能!它超级灵活,可以根据你的需求进行各种混合IO测试,支持多达13种不同的IO引擎哦!🚀
🔧 重点参数详解
filename 📁
参数值:设备名或文件名,如/dev/sdb或/home/test.img
解释:定义你要测试的对象,可以是裸设备或文件。想测裸盘?设置/dev/sdb;想测文件系统?设置/home/test.img!
name 🏷️
参数值:测试名称
解释:给你的测试起个名字吧!这个对性能没影响,但方便你识别测试结果哦~
rw 📝
参数值:read, write, rw, randread, randwrite, randrw
解释:选择你的测试类型!顺序读、顺序写、混合顺序读写、随机读、随机写、混合随机读写… 总有一款适合你!
rwmixwrite/rwmixread 📊
参数值:[0,100]
解释:在混合读写模式中,定义写或读所占的比例。比如rwmixread=10,就是读写比10:90啦!
ioengine 🔧
参数值:sync, libaio, psync等
解释:选择你的IO引擎!libaio是异步IO引擎中的佼佼者,结合direct=1,真实IO性能测起来!
direct 🔀
参数值:0或1
解释:0表示buffered IO,1表示direct IO。想绕过文件系统缓存?设成1就对了!
bs 📏
参数值:带单位的数字,如4k, 4K, 1m, 1M
解释:定义IO的块大小。默认是4k哦~
numjobs 👥
参数值:正整数
解释:定义测试的进程/线程数。默认1,多线程或多进程模式任你选!
iodepth 🔬
参数值:正整数
解释:每个进程/线程可以同时下发的IO任务数。异步IO场景下超有用!
cpu_allowed 💻
参数值:指定cpu的core
解释:选择你的测试进程/线程可以用的CPU核吧!
📊 测试项
顺序读、顺序写、随机读、随机写、混合读写
小包(如4K)和大包(如1024K)都要测哦!
🔍 关注指标
IOPS:每秒输入输出操作次数
带宽BW:数据传输速率
💡 小贴士
测试前检查环境和配置哦!
结果出来好好分析,找出性能瓶颈!
📚 另一个神器:iozone
iozone也是文件系统的benchmark工具哦!可以测试不同操作系统中文件系统的读写性能。记得设置测试文件大小大过内存(最好是两倍),不然结果可能不准哦!
🔗 更多性能测试干货:性能测试学习资源
🏷️ #FIO性能测试 #硬盘IO测试 #iozone测试 #性能测试工具