编辑: star薰衣草 | 2019-07-01 |
location /http_client { internal;
proxy_pass $arg_url;
} location /web_iconv { content_by_lua '
local from, to, url = ngx.var.arg_f, ngx.var.arg_t, ngx.var.arg_u local capture = ngx.location.capture local iconv = require iconv local cd = iconv.new(to or utf8 , from or gbk ) local res = capture( /http_client?url= .. url) if res.status ==
200 then local ostr, err = cd:iconv(res.body) ngx.print(ostr) else ngx.say( error occured: rc= .. res.status) end '
;
} 演进 效果 思考 ?? 优点 C? 服务侧开发语言同质化, 开发效率明显提升 C? 大数据请求处理速度大 幅度提高 ?? 完美的方案? 思考 ?? 协作式调度模型的问题 ?? Lua代码死循环 ?? I/O操作受限于Nginx模型 ?? 调试功能 参考 ?? 本演示稿中涉及的大部分技术已经开源: C?http://tengine.taobao.org C?https://github.com/chaoslawful/lua- nginx-module C?https://github.com/chaoslawful/drizzle- nginx-module C?https://github.com/agentzh/ ngx_openresty 欢迎加入我们! [email protected] @淘叔度 [email protected] @chaoslawful ........