Hello!
2013/6/24 Xiaohui Sun:
> 刚才写一段逻辑运行非常快,15-20MS左右
15 ~ 20ms 在 web 世界里真的不算“非常快” :)
> 在nginx请求时
> 当刷新X次后,可能会出现这次请求无效,用chrome看状态一直是pending状态
> 当卡死的次数等于线程数后,就各种不能访问了。
>
你说的“线程数”是指什么?Nginx 是单线程的东西,莫非你指的是 worker 进程数?请确认你没有在 Lua 中使用阻塞 I/O
操作,否则客户端并发度就是你的 nginx worker 进程的数目,即退化成类似 Apache httpd 的 prefork mpm
的并发能力了。
另外,请确认不是 chrome 等浏览器自己的请求并发控制所导致的 pending. chrome 等现代浏览器一般会主动限制对同一域名的请求并发度。
> 当那个请求卡死时,access也没有访问日志。
> 请问这是怎么回事?
>
如果是服务器端一侧的问题,可以查看 nginx 的错误日志文件。(记得一定要正确配置 nginx 的 error_log 指令,使用
error 以下的日志过滤级别,否则你的日志文件很可能总是为空。)
Best regards,
-agentzh