VPS主机和服务器磁盘IO读写速度测试方法-VPS主机真实IO检测工具

VPS主机磁盘IO的好坏直接影响到VPS主机性能的高低。对于测试VPS主机的性能,我们有非常多的脚本工具,例如:VPS主机速度和性能综合测试工具整理汇总中我们就分享了不少的脚本工具,可以快速地测试VPS主机的CPU、内存和带宽等。

不过,有好友反馈说对于VPS主机的磁盘IO测试,脚本测出来的结果差别比较大,甚至直到建站时才发现购买的VPS主机的IO太低,严重影响了性能。这篇文章就来分享一下VPS真实IO检测工具:DD、hdparm、Sysbench和FIO。

VPS主机和服务器磁盘IO读写速度测试方法-VPS主机真实IO检测工具

一、DD命令工具

dd if=/dev/zero of=test bs=8k count=256k conv=fdatasync
dd if=/dev/zero of=test bs=64k count=4k oflag=dsync

以上代码中conv=fdatasync与oflag=dsync的区别在于:sync函数只是将所有修改过的块缓冲区排入写队列,然后就返回,它并不等待实际写磁盘操作结束。fsync函数只对由文件描述符filedes指定的单一文件起作用,并且等待写磁盘操作结束,然后返回。

VPS主机和服务器磁盘IO读写速度测试方法-VPS主机真实IO检测工具

所以,不带缓存的IO读写测试才是硬盘的真实读写速度,一般来说低于30MB/s算是慢的了。

二、Hdparm工具

Hdparm是Linux的命令行程序,用于设置和查看ATA硬盘驱动器硬件参数并测试性能。首先是安装:

安装 hdparm
yum install hdparm -y
#apt install hdparm -y

然后是找出当前的硬盘。

fdisk -l
接着就可以开始测试了。命令如下:

sudo hdparm -tT /dev/sda2

测试结果如下图:

VPS主机和服务器磁盘IO读写速度测试方法-VPS主机真实IO检测工具

三、Sysbench工具

Sysbench是一款压力测试工具,可以测试系统的硬件性能,也可以用来对数据库进行基准测试。sysbench 支持的测试有CPU运算性能测试、内存分配及传输速度测试。首先是安装:

sudo apt install sysbench

然后是生成需要的测试文件,完成后会在当前目录下生成很多小文件。

sysbench --test=fileio --num-threads=20 --file-total-size=1G --file-test-mode=rndrw prepare

测试执行:

sysbench --test=fileio --num-threads=20 --file-total-size=1G --file-test-mode=rndrw run

测试完了,就可以看到相关的读写速度了。

VPS主机和服务器磁盘IO读写速度测试方法-VPS主机真实IO检测工具

清理测试时生成的文件。

sysbench --test=fileio --num-threads=20 --file-total-size=1G --file-test-mode=rndrw cleanup

四、Fio测试工具

Fio是Linux下开源的一款IOPS测试工具,主要用来对磁盘进行压力测试和性能验证。它可以产生许多线程或进程来执行用户特定类型的I/O操作,通过编写作业文件或者直接命令去执行测试动作,相当于是一个 多线程的io生成工具,用于生成多种IO模式来测试硬盘设备的性能。

首先是安装:

sudo apt install fio

测试读命令:

fio --name TEST --eta-newline=5s --filename=temp.file --rw=read --size=2g --io_size=10g --blocksize=1024k --ioengine=libaio --fsync=10000 --iodepth=32 --direct=1 --numjobs=1 --runtime=60 --group_reporting
Fio测试工具读速度

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/10215

(0)
凯影的头像凯影
上一篇 2023年11月23日 下午4:24
下一篇 2023年11月24日 下午4:39

相关推荐

  • 常见IIS错误解决方法

    1、错误号401.1症状:HTTP 错误 401.1 – 未经授权:访问由于凭据无效被拒绝。分析:由于用户匿名访问使用的账号(默认是IUSR_机器名)被禁用,或者没有权限访问计算机,将造成用户无法访问。解决方案:(1)查看IIS管理器中站点安全设置的匿名帐户是否被禁用,如果是,请尝试用以下办法启用:控制面板->管理工具->计算机管理->本地用户和组,将IUS…

    2022年11月25日
    1.7K00
  • Prometheus监控Linux

    Linux 客户端安装docker  创建node-exporter 启动docker 浏览器验证 http://ip:9100/metrics  prometheus节点操作 配置prometheeus/prometheus.yaml CPU采集node_cpu_seconds_totalnode_cpu_seconds_total{ instance=&…

    2024年1月4日
    1.2K00
  • Windows server 2012 r2 修改用户名、修改密码、设置服务器禁止ping、修改远程连接端口为39527、增加一个内网ip、安装mysql/php。

    修改用户名 1.打开左下角的win标,然后点管理工具 2.打开本机安全策略 3.打开本地策略-安全选项-翻到最下面,打开重命名系统管理员账户 4.双击打开,输入自己的需要的,然后点击“应用”-“确定” 5.然后到“计算机管理”这边,点击“本地用户和组”-“用户”,发现管理员的名称已经更改成功 修改密码 1.选择想改变密码的账户右击,选择“设置密码” 2.点击…

    2022年7月18日
    2.9K00
  • MySQL 用户管理和权限管理

    在项目中,一个数据库有很多人需要使用,不能所有的人都使用相同的权限,如果人比较多,一人一个用户也很难管理。一般来说,会分超级管理员权限,管理员权限,读写权限,只读权限等,这样方便管理。当然,具体怎么管理权限根据实际情况来确定。无论如何,都需要创建多个用户来管理权限。root 是数据库的超级管理员用户,对于普通开发人员来说,权限太大了,如果不小心做了一些不可逆…

    2022年6月9日
    1.9K00
  • 常见的windows网络管理命令

    ipconfig命令 ipconfig实用程序可用于显示当前机器的TCP/IP配置。 tracert命令 路由追踪命令,用来显示数据包到达目的主机所经过的路径。 一般添加 -d 参数 ,不将地址解析为计算机名,加快路由速度 nslookup命令 nslookup命令可以指定查询的类型,可以查到DNS记录的生存时间还可以指定使用哪个DNS服务器进行解释。 ip…

    2022年6月10日
    1.6K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信