Linux磁盘性能测试:使用 dd 与 fio 评估存储系统的读写吞吐量

雨强吖_7637

雨强吖_7637

2026-09-06

681人浏览

原创

dd测顺序吞吐上限,fio测真实业务随机性能;dd适合快速验证链路与大块带宽,fio支持并发、随机、混合负载及iops/延迟等多维指标。

linux磁盘性能测试:使用 dd 与 fio 评估存储系统的读写吞吐量

Linux磁盘性能测试不能只看一个数字——dd 测的是大块顺序吞吐的“天花板”,fio 测的是真实业务下随机访问的“实际表现”。两者目标不同、方法不同、结果也不能直接比较。

dd 测试:专注顺序读写带宽

dd 适合快速验证磁盘链路是否通畅、文件系统挂载是否正常、以及大块连续 I/O 的理论上限。它不模拟并发、不统计延迟、也不支持随机模式,但胜在简单可靠。

  • 写入测试:用 dd if=/dev/zero of=/mnt/testfile bs=1M count=2048 conv=fdatasync,其中 fdatasync 确保数据真正落盘,避免缓存干扰
  • 读取测试:先执行 sync && echo 3 > /proc/sys/vm/drop_caches 清空页缓存,再运行 dd if=/mnt/testfile of=/dev/null bs=1M iflag=direct,iflag=direct 强制绕过缓存读物理介质
  • 注意块大小:bs=4k 得到的是小 IO 吞吐(单位 MB/s)和隐含 IOPS,bs=1M 才能逼近视频、备份类场景的带宽极限;同一块盘,两者结果可能差 5 倍以上
  • 别信单次结果:count 太小(如 count=1)或未清缓存,会导致数值虚高或剧烈波动;建议至少写入 512MB 以上,并多次测试取稳定值

fio 测试:覆盖真实业务负载

fio 是专业级 IO 压力工具,能精准建模数据库、虚拟机、日志服务等典型场景。它输出 IOPS、带宽、平均延迟、p95/p99 延迟等关键指标,是评估存储能否承载业务的核心手段。

linux-sysadmin
linux-sysadmin

Linux系统管理专家,覆盖12大模块:用户权限、SSH、存储、网络、systemd、防火墙、日志监控、备份恢复、TLS证书、Ansible、容器、IaC。提供配置、验证、加固、监控、备份、自动化、故障排查、回滚闭环。关键词:useradd、sudo、sshd_config、chmod、SEL...

下载
  • 必须加 direct=1:否则测的是内存+缓存性能,不是磁盘本身;所有结果都应基于 direct=1 运行
  • 按业务选参数:
    • OLTP 类(如 MySQL):rw=randwrite 或 randread,bs=4k,iodeth=32(SSD)或 8(HDD)
    • 日志类(如 Kafka):rw=write,bs=128k–1M,关注持续吞吐与稳定性
    • 混合负载:用 rw=randrw,rwmixread=70 模拟读多写少的缓存型服务
  • 延迟比 IOPS 更关键:尤其对数据库,p99 延迟超过 20ms 就可能引发超时;fio 默认输出 clat(completion latency)的百分位值,务必检查
  • 文件还是裸设备:测试文件系统性能,就写路径(如 /mnt/data/test.fio);测试底层磁盘能力,需卸载后直写 /dev/sdb,但操作风险高,慎用

什么时候该用哪个工具

不必纠结“哪个更好”,而要看你想回答什么问题:

  • 新盘上线,想确认能不能达到标称 500MB/s?→ 用 dd 测顺序写,bs=1M + conv=fdatasync
  • MySQL 响应变慢,怀疑是磁盘随机写瓶颈?→ 用 fio 跑 randwrite,bs=4k,iodepth=32,direct=1,重点看 p99 延迟
  • 对比两套存储方案,谁更适合跑 Elasticsearch?→ fio 配置 randrw,rwmixwrite=30,bs=8k,iodepth=16,比对 IOPS 和延迟抖动
  • 运维巡检,快速筛查磁盘是否掉速或异常?→ dd 写一次 + 读一次,耗时不到一分钟,有明显下降就需深入排查

几个容易踩的坑

很多“测出来很慢”的报告,其实不是磁盘问题,而是测试方式不对:

  • 没清缓存就测读:刚写完马上读,结果反映的是 DRAM 缓存速度,不是磁盘
  • 混用 conv 和 oflag/iflag:比如同时写 conv=fdatasync 和 oflag=direct,部分内核版本会报错或行为异常
  • SSD 测试没关写缓存:SATA SSD 或 RAID 卡常带 DRAM 缓存,不加 conv=fdatasync 或 oflag=dsync,写速虚高数倍
  • fio 没设 iodepth:默认 iodepth=1,相当于单线程串行压测,完全无法体现 SSD 并发优势

相关文章

数码产品性能查询
数码产品性能查询

该软件包括了市面上所有手机CPU,手机跑分情况,电脑CPU,电脑产品信息等等,方便需要大家查阅数码产品最新情况,了解产品特性,能够进行对比选择最具性价比的商品。

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

437

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

880

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

2592

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

876

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

769

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

394

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

2356

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

4332

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

707

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习