Reg. nginx_tcp_proxy_module

Maxim Dounin mdounin at
Tue Apr 23 07:04:36 UTC 2013


On Tue, Apr 23, 2013 at 11:59:22AM +0530, ESWAR RAO wrote:

> Hi All,
> I have a below setup:
> netcat client (nc localhost 8081) =====>nginx server(8081) with tcp_proxy
> module=====>2 netcat servers(8031 and 8032)
> $ nc localhost 8081
> biiiiiiiiiiiiiiiiii
> $ nc -lk 8031
> biiiiiiiiiiiiiiiiii
> $ nc -lk 8032
> If I kill the process $ nc -lk 8031, the client is also getting killed.
> I expect the nginx server would read 0 bytes upon closing the connection to
> 8031 server and it detects the server failover and it establishes the
> connection to 8032 server so that the clients won't experience any
> downtime. Since the client establishes connection to only nginx at 8081, it
> should be shielded from failover of 8031 server.
> Can anyone please help me if my understanding is wrong ??

While I'm not really familiar with 3rd party tcp_proxy module, the 
"reestablishing" connection would be really unexpected behaviour - 
as the module doesn't know anything about the protocol and can't 
assume there is no states associated with a connection on a client 
and/or on a server.

That is, just dropping the connection looks correct.  What the 
module can do is to select a working server on connection 

Maxim Dounin

More information about the nginx mailing list