Loading... 磁盘I/O性能对服务器来说是非常重要的指标,能够较大影响网站的体验。特别是如果你使用“Tengine”作为Web Server,当大并发访问时,Tengine会需求较高的I/O,所以测试服务器的I/O是非常有必要的。 <span style="font-size: 14pt;"><strong><span style="color: #800080;">测试小文件随机读写的I/O能力</span></strong></span> 实际上大多数情况,我们的服务器不会读写大文件,小文件的读写能力才是最重要的,这也最影响网站性能的因素,我们使用如下测试指令: <pre class="line-numbers"><code class="language-nginx">dd bs=64k count=4k if=/dev/zero of=test oflag=dsync</code></pre> dd在执行时每次都会进行同步写入操作。也就是说,这条命令每次读取64k后就要先把这64k写入磁盘,然后再读取下面这64k,一共重复128次。这可能是最慢的一种方式了,因为基本上没有用到写缓存。这个命令可以模拟数据库的写入情况,如果你使用LNMP一键包,并且把MySQL架设在你自己的服务器上而没有使用云数据库,那么这个测试就非常用必要了。 一般来说,这个测试命令测出的数值超过10MB/S,对于建站就基本没有太大影响,超过30MB/S就可以比较稳定的建多个站点,超过50MB/S就是比较优秀的VPS了。 <span style="font-size: 14pt;"><strong><span style="color: #800080;">测试大文件写入的情况</span></strong></span> 对于大文件的写入模拟测试,可以使用这个命令: <pre class="line-numbers"><code class="language-nginx">dd bs=64k count=4k if=/dev/zero of=test conv=fdatasync</code></pre> 这个命令测试的结果比前一个应该会高出不少。 dd命令执行到最后会真正执行一次“同步(sync)”操作,所以这时候你得到的是读取这128M数据到内存并写入到磁盘上所需的时间。 由于目前很多VPS商(特别是以OpenVZ技术提供VPS的)都采用共享磁盘I/O,所以你应该在一天的不同时刻来测试,以获取最接近真实情况的数值。 本文摘自Seryo Network,标个记号~ <img style="display: block; margin-left: auto; margin-right: auto;" src="https://static.huyangjia.com/usr/uploads/2016/02/ceshi.jpg" alt="" width="415" height="132" /> 最后修改:2021 年 12 月 20 日 10 : 34 AM © 允许规范转载 赞赏 如果觉得我的文章对你有用,请随意赞赏 赞赏作者
2 条评论
过来看看你的博客,希望每天都更新一些文章。
测试一下