开发者社区> 问答> 正文

[云代维案例]目录下文件数量过多导致的IO性能问题

登录客户主机后,发现的情况如下:


IO wait值明显偏高。

vmstat命令持续观察:


可以看到,CPU使用率真不高,但是IO读写量以及IO wait值持续的保持在较高的状态。

经检查发现,PHP进程大部分时间都是在读写/data/appbyme/thumb下的文件,这个插件应该是考虑到了性能问题,把目录分成了三级,每一级30个目录,随便进到一个最终目录,检查发现:


猜测这个插件应该是持续写入文件到这些目录,没有自动清理功能。
  
统计一下这些文件的总大小:


截图时已经将这个文件夹改名。可以看到,文件量达到了74G,而统计这些文件就用了12分钟。
  
在将文件夹改名后,插件自动创建了新的目录,IO读写以及IO wait也恢复到了正常的状态:


系统负载也恢复到了正常:


本案例涉及到的插件是一款名为mobcent的手机客户端插件,有使用这个插件的用户请注意下。

原文地址:http://www.yundaiwei.com/post/382.html

展开
收起
云代维 2015-03-05 13:17:42 11764 0
8 条回答
写回答
取消 提交回答
  • Re目录下文件数量过多导致的IO性能问题
    这个不错,从另一个角度反映速度慢的原因
    然而IO速度慢的本质原因是硬盘的问题,建议用全SSD的硬盘试试看,推荐PPPCloud的全SSD云主机,我用过,很快
    2015-12-18 10:20:47
    赞同 展开评论 打赏
  • Re目录下文件数量过多导致的IO性能问题
    IO问题,简直了。还是全SSD靠谱
    2015-12-18 10:05:22
    赞同 展开评论 打赏
  • Re目录下文件数量过多导致的IO性能问题
    技术牛帖
    2015-12-17 10:24:31
    赞同 展开评论 打赏
  • Re目录下文件数量过多导致的IO性能问题
    "经检查发现,PHP进程大部分时间都是在读写/data/appbyme/thumb下的文件"  

    这个步骤如何实现呢??

    用什么方法可以检查php进程读写哪些目录!
    2015-06-14 11:28:49
    赞同 展开评论 打赏
  • 旺旺:nectar2。
    Re目录下文件数量过多导致的IO性能问题
    有技术,牛。
    2015-03-09 10:15:55
    赞同 展开评论 打赏
  • PHP程序员,业余无线电爱好者,呼号:BH9BHT,自由职业!
    好贴
    2015-03-08 19:21:15
    赞同 展开评论 打赏
  • 好文章,值得好好看一看
    2015-03-05 15:19:53
    赞同 展开评论 打赏
  • 爱好建站
    我在用这个插件
    2015-03-05 13:27:47
    赞同 展开评论 打赏
滑动查看更多
问答分类:
PHP
问答地址:
问答排行榜
最热
最新

相关电子书

更多
多IO线程优化版 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载