我的Rails应用程序总是达到我的VPS在Linode设置的磁盘I/O速率的阈值。它设置为3000(我从2000年起),每隔大约一小时我会收到一个通知,它达到4000-5000 +。高磁盘IO速率
我可以使用哪些方法来最小化磁盘IO速率?我主要使用狮身人面像(思维狮身人面像插件)和纬度和经度距离搜索。
有什么方法可以避免?
我正在使用Rails 2.3.11和MySQL。
谢谢。
我的Rails应用程序总是达到我的VPS在Linode设置的磁盘I/O速率的阈值。它设置为3000(我从2000年起),每隔大约一小时我会收到一个通知,它达到4000-5000 +。高磁盘IO速率
我可以使用哪些方法来最小化磁盘IO速率?我主要使用狮身人面像(思维狮身人面像插件)和纬度和经度距离搜索。
有什么方法可以避免?
我正在使用Rails 2.3.11和MySQL。
谢谢。
因为你的问题不明确,简明地回答,这是一般的几件事情之一的标志:
EXAMINE
进行核对。JOIN
查询是绝对必要的。robots.txt
,或者开始阻止麻烦的IP。它是高位高位持续很长一段时间,还是只是暂时尖峰?
有没有特定的方法可以避免(除非写入磁盘)。
您可以尝试在生产中使用类似NewRelic的分析器,以更深入地了解您的表现。分析器将突出显示需要很长时间的操作,然而,当您检查您在该操作中使用的特定算法时,您可能会发现该特定操作的低效率。
你是否检查你的服务器是否交换了自己的死亡? “顶”是什么意思?
你的Linode可能只有有限的RAM,这可能是非常有可能,它是交换像疯了似的让一切运行..
如果在IO图中看到红,那就是交换活动!您需要将您的Linode升级到更多RAM, 或限制正在运行的进程的数量/大小。你还应该添加大约2倍的RAM大小作为交换空间(交换分区)。