Hello!
2013/7/11 鹏城
> 最近在使用你的openresty,非常方便!
谢谢!
> 不过最近观察到一个问题,ngx总有3个进程的cpu 100%。
> 具体情况如下,麻烦你看看是不是异常情况?
>
对于高 CPU 占用的情形,应当总是使用我的 Nginx Systemtap Toolkit 中的 ngx-sample-bt 和
ngx-sample-lua-bt 这两个工具对有问题的 nginx worker 进程分别进行 C 级别和 Lua
级别上的调用栈采样,从而分别绘制出 C 级别和 Lua 级别的“火焰图”进行分析。细节见文档:
https://github.com/agentzh/nginx-systemtap-toolkit#ngx-sample-bt
https://github.com/agentzh/nginx-systemtap-toolkit#ngx-sample-lua-bt
另外,如果是因为你的 Lua 代码在某个特殊代码路径上死循环了,则可以使用 ngx-lua-bt 工具加以确认并查看死循环发生的 Lua 代码位置:
https://github.com/agentzh/nginx-systemtap-toolkit#ngx-lua-bt
同时抄送给 openresty 中文邮件列表:https://groups.google.com/group/openresty
建议你加入此列表并总是在那里交流这样的问题。谢谢合作!
Best regards,
-agentzh