ngx_event_expire_timers的死循环,一直再处理这个函数,导致cpu飙高。
问题就是这个时间是被篡改为了0,而正常的情况下,应该是被初始化为1000ms的,但是不知道是在哪里被改的,现在进入了循环,也跳不出来,不知道有啥办法知道在哪里被改动了。
另外这个问题是不可复现的,昨天出现了一次,reload后正常了,今天又出现了,所以不能reload。
--
--
邮件来自列表“openresty”,专用于技术讨论!
订阅: 请发空白邮件到 openresty+subscribe@googlegroups.com
发言: 请发邮件到 open...@googlegroups.com
退订: 请发邮件至 openresty+unsubscribe@googlegroups.com
归档: http://groups.google.com/group/openresty
官网: http://openresty.org/
仓库: https://github.com/agentzh/ngx_openresty
教程: http://openresty.org/download/agentzh-nginx-tutorials-zhcn.html
https://github.com/openresty/stapxx#lj-lua-bt 这个工具可以获取当前的 Lua 调用栈,可以精确到代码行数。你试试,能否满足你的要求。当然,这个工具不用你 reload NGINX。
在 2016年9月28日 下午12:15,wwaz wwaz <3824...@qq.com>写道:
在nginx中,发现了某个某块把超时时间为0的timer加入了timer树,而这个timer又会重复加入timer为0的timer,这样导致陷入了ngx_event_expire_timers的死循环,一直再处理这个函数,导致cpu飙高。
问题就是这个时间是被篡改为了0,而正常的情况下,应该是被初始化为1000ms的,但是不知道是在哪里被改的,现在进入了循环,也跳不出来,不知道有啥办法知道在哪里被改动了。
另外这个问题是不可复现的,昨天出现了一次,reload后正常了,今天又出现了,所以不能reload。
--
--
邮件来自列表“openresty”,专用于技术讨论!
订阅: 请发空白邮件到 openresty...@googlegroups.com
发言: 请发邮件到 open...@googlegroups.com
退订: 请发邮件至 openresty+...@googlegroups.com
订阅: 请发空白邮件到 openresty+subscribe@googlegroups.com
发言: 请发邮件到 open...@googlegroups.com
退订: 请发邮件至 openresty+unsubscribe@googlegroups.com