fio性能测试-环境搭建,功能介绍,测试讲解

Fio介绍:FIO(Flexible I/O Tester)是一个用于测试磁盘、文件系统、块设备和网络设备性能的工具。它可以模拟不同类型的I/O负载,包括随机或顺序读写、混合读写、随机或顺序访问等。FIO提供了丰富的选项和参数,可以对测试进行高度定制化配置,以满足各种应用场景和需求。FIO是开源软件,可在Linux、Unix、Windows等多种平台上运行。

1.测试环境

系统:CentOS Linux release 7.9.2009 (Core)

硬盘:7.7TB(RAID5 SAS 1.2TB*8)

2.fio工具下载

1) yum直接下载

yum install fio -y

查看版本:fio –v

2) 下载fio解压包离线安装

下载地址:https://github.com/axboe/fio

百度微云:https://pan.baidu.com/s/1OX18q2yiB_ZE0CTL8k19kw 提取码:2023

腾讯微云:https://share.weiyun.com/kU9ecAC7 密码:632jf8

libaio-devel是依赖包,如不安装fio无法使用,会报错:fio: engine libaio not loadable fio: failed to load engine

rpm –ivh libaio-*

unzip fio-3.6.zip                           #解压
ls
cd fio-3.6/fio-3.6 #进入fio解压包
chmod +x * #打开权限
./configure #配置环境
make && make install #编译安装

查看是否安装成功:fio –v

3.功能介绍

4.性能测试

顺序读(rand):
fio --filename=/dev/sd? --ioengine=libaio --direct=1 --rw=read --bs=1M --numjobs=4 --iodepth=32 --runtime=300 --time_based --thread --norandommap --group_reporting --name=fiotest
顺序写(write):
fio --filename=/dev/sd? --ioengine=libaio --direct=1 --rw=write --bs=1M --numjobs=4 --iodepth=32 --runtime=300 --time_based --thread --norandommap --group_reporting --name=fiotest
随机读(randread):
fio --filename=/dev/sd? --ioengine=libaio --direct=1 --rw=randread --bs=4K --numjobs=4 --iodepth=32 --runtime=300 --time_based --thread --norandommap --group_reporting --name=fiotest
随机写(randwrite):
fio --filename=/dev/sd? --ioengine=libaio --direct=1 --rw=randwrite --bs=4K --numjobs=4 --iodepth=32 --runtime=300 --time_based --thread --norandommap --group_reporting --name=fiotest

结果分析:

测试结果:bw=1142Mib/s

也可以使用以下命令可直接查看结果(在参数末尾添加 | grep BW ):

fio --filename=/dev/sda --ioengine=libaio --direct=1 --rw=write --bs=1M --numjobs=4 --iodepth=32 --runtime=300 --time_based  --thread --norandommap --group_reporting --name=fiotest |grep BW

以下是输出结果:

测试结果有了怎么判断自己测试的数据是否合格呢?

根据你测试的硬盘型号,去硬盘官网查询硬盘的读写标准

编制fio性能测试图进行对比

我这里写了一个脚本,会自动生成测试日志,有需要的同学,可以关注我,我发给你。

#The write:zuijiaz@outlook.com
#Time of creation:2023.04.13

fio性能测试-环境搭建,功能介绍,测试讲解的更多相关文章

  1. Mac 性能测试环境搭建——理论篇

    此篇为博主原创内容,若转载请写明出处,谢谢! 前言在搭建之初,我们要思考的2个点:1.性能怎么测试?2.性能的测试环境如何搭建(该如何去做)?1.什么是性能?    个人理解为:合理的架构.低耦合.高 ...

  2. Elasticsearch环境搭建和介绍(Windows)

    一.Elasticsearch介绍和安装 1.1 介绍  Elastic Elastic官网:https://www.elastic.co/cn/ Elastic有一条完整的产品线:Elasticse ...

  3. kafka环境搭建及librdkafka测试

    kafka环境搭建及librdkafka测试 (2016-04-05 10:18:25)   一.kafka环境搭建(转自http://kafka.apache.org/documentation.h ...

  4. 二进制搭建kubernetes多master集群【开篇、集群环境和功能介绍】

    本文主要说明kubernetes集群使用组建的版本和功能介绍.. 一.组件版本 Kubernetes 1.12.3 Docker 18.06.1-ce Etcd 3.3.10 Flanneld 0.1 ...

  5. 转:(WIN)S04-CH01 PCIE XDMA开发环境搭建以及环路测试

    摘要: 这一章开始主要介绍 XILINX FPGA PICE IP XDMA IP的使用.XDMA IP使用部分教程分LINUX 篇和WINDOWS篇两个部分.通过实战,面向应用,提供给大家 XILI ...

  6. Redis环境搭建和代码测试及与GIS结合的GEO数据类型预研

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 1.1传统MySQL+ Memcached架构遇到的问题 My ...

  7. Jmeter环境搭建详细介绍

    [前言] 欢迎来到我的博客,知识在于分享,如有不足之处,希望指出,大家共同进步学习! [JDK检查和安装] 现在市面上比较普遍的性能测试工具无非就LoadRunner和Jmeter,本人一直秉持着便宜 ...

  8. windows环境下mosquitto环境搭建与mqtt测试

    https://blog.csdn.net/pgpanda/article/details/51800865 工作需求,自己在windows下搭建了一个mosquitto环境测试mqtt 话不多说,直 ...

  9. Jmeter学习一:Jmeter性能测试环境搭建(Windows下)

    最近刚开始接触Jmeter性能测试,现总结环境搭建如下: 一.windows安装JDK步骤与环境变量配置: 1.先将下载的JDK安装到其默认目录:C:\Program Files\Java\jdk1. ...

  10. Libgdx环境搭建及介绍

    Libgdx简单介绍: libgdx是一个跨平台的2D/3D的游戏开发框架,它由Java/C/C++语言编写而成.ibgdx兼容大多数微机平台(标准JavaSE实现,能执行在Mac.Linux.Win ...

随机推荐

  1. jsp第三个作业

    main.jsp <%@ page language="java" import="java.util.*" pageEncoding="utf ...

  2. JavaWeb学习--EL表达式

    一.EL表达式: 1.命令表达式: ${作用域对象别名.共享数据} 2.命令作用: 1)EL表达式是EL工具包提供一种特殊命令格式[表达式命令格式] 2)EL表达式在JSP文件上使用 3)负责在JSP ...

  3. 关于vmwork中centos7的虚拟机创建

    1.准备vmwork软件和centos7的镜像文件 vmwork软件下载地址https://www.vmware.com/cn/products/workstation-pro/workstation ...

  4. Docker部署【项目管理和问题跟踪工具-Redmine】

    创建网络 docker network create redmine-network 启动Mysql数据库 docker run -d --name mysql --network redmine-n ...

  5. idea开发使用外置tomcat配置

    1. 添加依赖 <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId> ...

  6. NX二次开发 批量导出X_T(包括部件里的装配体)

    VS2019 NX1946 UF_initialize(); string filepath = strDir + "\\";//拼接路径 //获取图层过滤 PropertyLis ...

  7. 实验二:Open vSwitch虚拟交换机实践

    基础要求提交 a) /home/用户名/学号/lab2/目录下执行ovs-vsctl show命令.以及p0和p1连通性测试的执行结果截图: b) /home/用户名/学号/lab2/目录下开启Min ...

  8. 程序猿、IT男、屌丝

    一个学计算机的,做了金融圈的朋友,对另外做硬件的朋友,如是说: [据说你写的程序代码,必须很浪的计算机才能运行] [ 以后还用写程序吗.不是ChatGPT直接可以出源代码吗?] 程序猿.IT男.屌丝. ...

  9. 在Vim编辑器中查找选定文本

    按照任意选定文本查找: 1. 进入visiual模式选定文本, 按 y 键复制: 2. 按 / 键进入查找模式: 3. 按 Ctrl + r 打开vim寄存器: 4. 按 " 键将寄存器内容 ...

  10. 关于再次报错500--Servlet报出异常

    我是根据这样的方法解决的: 本来在前几篇里面,我是将get或者post的没有用到的方法里面自带的super方法直接删除了的,然后今天运行发现,功能实现不了,还报出500的异常错误: 心态直接裂开,然后 ...