hi 如题
我们打算在正式的生产环境中使用Ngx_lua。目前我们的瓶颈就是,使用的脚本语言处理网络io是同步阻塞的。这就导致如果后端服务有问题就会导致我们的脚本进程打满(e.g php-cgi)。从而无法继续对新的请求进行处理。
在使用ngx_lua的时候,我们打算用c写一套网络交互的lua 扩展模块。这样在单个请求来的时候ngx_lua会对每个请求都创建一个coroutine来运行lua code(个人理解,求证ing)。那么如果lua code 代码本身存在阻塞的逻辑(网络io),会对ngx work process有影响吗?
如果有影响,那么解决的方案是不是有:1 . 调用ngx_lua提供的io库。 2. 在lua代码中自己使用coroutine。以及是什么原因产生的对ngx work process的影响呢?