今天收到一封来自 linode.com 的提醒邮件“Randy,你的 Linode 磁盘 io 速率已超过通知阈值 (1000),过去 2 小时的平均值为 1571.81。”。
我上次收到这样的警报是在几个月前,我一直收到警报,但与此同时我的网站网络流量从未增长。我尝试了所有方法,但无法找出问题所在。最后,我猜问题出在不断增长的日志文件大小上。我使用 cronolog 剪切日志文件,问题解决了。
现在,I/O 速率图表显示 I/O 速率也在不断增长,我该如何定位问题?有什么可以帮助我吗?
我的服务器是 linode.com 上的 Ubuntu 8.04.4 LTS/apache/php/mysql。
答案1
您可以使用 iotop 包确定哪个进程正在破坏您的磁盘。http://ubuntuforums.org/showthread.php?t=876738
另外,您可以在 Linode 网络界面的“设置”选项卡中更改 I/O 速率警报阈值。
答案2
尝试状态监测看看 bi/bo 是否很多。我认为这是由于交换抖动引起的,因为您的 Linode 的物理内存较小。
答案3
首先,你可能会使用 vmstat iostat 来 发现问题,mysql 或 apache
2、如果问题出在 apache 上,可以用 nginx + fastcgi 来替代 apache ,它是一个轻量级的 Web 服务器,比 apache 好用
if problem from mysql ,you can modify my.cnf
第三,如果问题来自其他应用程序?请粘贴您的日志文件