论坛首页 编程语言技术论坛

后记: 用Strace 命令 Debug: mongrel CPU usage 100%问题

浏览 2170 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-06-08   最后修改:2009-06-08
上周周末,忽然发现在点击某个链接后,mongrel 使用了100% CPU.
反复察看代码,没有发现问题。然后仔细的查看了log file也没有看到任何问题。
由于我的部署方案是apache + mongrel所以我又察看了/etc/httpd/logs/里面的文件。
只查到了一个502的错误。但是还是百思不得其解。

用top命令察看了进程。发现只是CPU的使用率很高,内存仍然很小。
证明不是什么内存泄漏的问题。

CPU 的使用率很高只能说明程序在某一个环节进入了一个大的loop.
查找这个loop让我费了点劲。

最后找到了神奇的命令:strace -p pid
这个命令准确地记录了进程的活动信息。

下次再遇到CPU usage 100%的时候,就可以很容易得找到具体的问题出在哪里了。



   发表时间:2009-06-09   最后修改:2009-06-09
在两年前就已经有监视 mongrel 的插件了
http://github.com/alexstaubo/mongrel_proctitle/tree/master 希望这个插件能直接解决你的问题

装完以后跑 mongrel,用 PS 命令就能观察到 mongrel 在哪个请求上 CPU Usage 到达100%,接下来只要检查代码就OK
0 请登录后投票
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics