不用给后台server开socket,只需要保存ip到list中,每个client来的时候从list中取一个ip进行connect。
On 5月27日, 下午9时11分, Han Li <zju.missha...@gmail.com> wrote:
> 很感谢!最近在忙别的,明天按照你的方法尝试。但菜鸟还是问一下,你的意思是否是说,给每个后台Server开一个ngx
> socket,保存成数组,每个Client来的时候映射到一个Server。也就是简单地将你的连redis的demo复制,只是ngx
> socket的数目变成多个。刚接触ngx+lua,对于开发也是green hand。望指教,谢谢!
>
>
>
>
>
>
>
> On Saturday, May 25, 2013 9:05:34 AM UTC+8, Simon wrote:
>
> > 你需要对客户端的请求进行处理,可以简单的将请求hash取模,映射到对应的服务器,或者用一致性hash的算法。
>
> > 如果需要检测server异常,可以在连接后端server的时候进行检测,并且删除异常的server.
>
> > On 5月24日, 下午4时55分, Han Li <zju.missha...@gmail.com> wrote:
> > > 把定义移过去就好了,谢谢!
>
> > > 另外请教一下,比如我有几个Server,想使用nginx_tcp_lua_module实现代理这几个Server,能够负载均衡,并且Server
> > > list是可能增删的。请问我要怎么做?
> > > 看到你的代码里面有redis的demo,但是只是nginx代理了一个demo。所以想请教您大概是什么流程,或者有没有demo,谢谢!
>
> > > On Friday, May 24, 2013 11:10:30 AM UTC+8, Simon wrote:
>
> > > > 可能你的编译器不支持typedef重复定义,我这里是可以的。
>
> > > > 你可以把这两个文件的typedef都移到ngx_tcp.h
>
> > > > On 5月23日, 下午9时35分, zju.missha...@gmail.com wrote:
> > > > > Hi,菜鸟请教一下,这个nginx-tcp-lua-module包在make的时候出错,提示:
> > > > > In file included from
> > ../nginx-tcp-lua-module//src/ngx_tcp_session.c:6:
> > > > > ../nginx-tcp-lua-module//src/ngx_tcp_lua_common.h:70: error:
> > > > redefinition of typedef 'ngx_tcp_cleanup_pt'
> > > > > ../nginx-tcp-lua-module//src/ngx_tcp_session.h:48: note: previous
> > > > declaration of 'ngx_tcp_cleanup_pt' was here
> > > > > make[1]: *** [objs/addon/src/ngx_tcp_session.o] Error 1
>
> > 指的是typedef的redefine,我分别看了ngx_tcp_lua_common.h:70,ngx_tcp_session.h:48,都有一行代码:typedef
> > > > void (*ngx_tcp_cleanup_pt)(void *data);既然定义是相同的,应该不会报错,请问这是什么问题?谢谢哈!