Hello!
2013/10/5 XinQi Yang:
>
> 最近在做 lua 下的请求转发用到了 https://github.com/catwell/lua-multipart-post
> 这个multipart-post的模块,模块依赖于 https://github.com/fire/luasocket 这个,在 centos 6.2
这个 luasocket 必会阻塞 nginx worker 进程,让你的 nginx 服务器瞬间退化成和 Apache httpd 和
php-fpm 一样弱 :) 绝对不要在生产环境使用它!
>
> 看了下这里依赖于 socket.core 模块,貌似luajit下没有这个模块,但是lua 5.1 是有的. 现在在openresty 下跑不起来.
>
标准 Lua 5.1 解释器的官方源码发布包中绝对不会有 socket.core 这种东西 :)
> 我想问的是 luasocket 模块有什么替代么,我看 lua-resty-http 里面用了 local sock = tcp() 这个tcp
> 的socket 这个可以替代么?
>
ngx_lua 提供的 cosocket API 是非阻塞的,而且这个 API 故意设计成和 LuaSocket 库基本兼容,所以你把
Lua 社区里那些基于 LuaSocket 的 Lua 库移植到 ngx_lua 环境中,也不会很费劲。
Regards,
-agentzh