阿里云的磁盘IO真垃圾

今天在使用阿里云的虚拟服务器(VPS)的时候,用了一个命令find /user -type d | grep "xxx"。然后令人惊讶的是,就此停留在那里,一动不动没有动静。我等了几分钟,终于忍耐不住给Ctrl+C了。

难不成我这命令天赋异于常人,于是换了台服务器测了一下这个命令,三秒时间不到结果就出来了。那么到底是什么原因呢?

我就输入top命令查看一下CPU的占用情况,好家伙 wa 那一项的占用率达到了90%+。

使用man top找到了这一项的解释:wa, IO-wait : time waiting for I/O completion

原来命令卡的问题是IO啊,不行我得看看到底卡到什么程度了,使用time dd测速命令从服务器上拷一份数据,测个速。

额,使用time dd测出来的速度居然是正常的,大概30+M/s,虽然貌似慢了点,但是还是过得去的。首先排除大文件的读写问题!

那么我们来测测小文件的读写,这个实在没有找到工具,就找了一个小文件比较多的目录直接copy了。然后果然,同样的事情发生了,在其他服务器上三秒copy完的目录在这台机器上copy了两分钟。

所以问题很大概率确定了,小文件的读写IO有问题,而find的时候需要读很多小文件,结果速度超级慢。
正准备给阿里云发工单的时候,突然情况缓解许多,估计是因为宿主机其他机器的影响。

以前经常听说阿里云的服务器IO坑太多,自己没多少感觉,毕竟我也不在上面放什么应用。但是今天却给我当头一棒,连普通的命令都卡,或许我应该换个其他的云服务商了。

标签: none

添加新评论