Hello!
2012/10/9 zhan hu:
> 这几天有个业务,获取数据通过ngx_lua每隔30s定时请求后段,我发现client
> abort之后,lua并没有中断,不知道能有没有接口可以判断client的状态。来结束循环?
>
按照目前的设计,这是通过配置指令
lua_ignore_client_abort off;
来实现的。其机制是,当客户端连接断开时,ngx_lua 立即终止当前请求的执行,无论当前的 Lua 代码是否正等待在
ngx.sleep(), ngx.flush(true), cosocket 操作,还是其他什么 I/O 操作上。
这个机制所需的大部分底层支持已经在 ngx_lua 的 thread 分支中实现了(而 thread 分支也刚刚已经合并到了
master),但仍未完成。我希望能在本周内实现 :)
Best regards,
-agentzh