1
我是Java Socket编程和Netty的初学者。目前,我们有一个使用纯Java Socket连接的应用程序,我们可以通过它来管理套接字的健康状况。netty如何管理套接字的健康状况
我想了解netty如何管理套接字? 港口将会开放多久? 如果套接字连接断开会发生什么?Netty如何维护tcp会话?
我是Java Socket编程和Netty的初学者。目前,我们有一个使用纯Java Socket连接的应用程序,我们可以通过它来管理套接字的健康状况。netty如何管理套接字的健康状况
我想了解netty如何管理套接字? 港口将会开放多久? 如果套接字连接断开会发生什么?Netty如何维护tcp会话?
关于管理底层的tcp套接字细节,Netty是完全透明的。
港口将被开放多久?
的Netty允许你设置SO_TIMEOUT通道上 - 这基本上是引发读取超时警报一个tcp属性,你可以编写代码来响应这个,如果你渴望这样断开连接。
如果套接字连接被删除,会发生什么?
如果您使用SimpleChannelUpstreamHandler,那么它的channelDisconnected(ChannelHandlerContext ctx, ChannelStateEvent e)
将被调用。
如何Netty的是保持TCP会话?
不确定你的意思,但它基本上是一个tcp协议中使用的机制。
SO_TIMEOUT是读取超时。它不会导致连接被丢弃,Netty无论如何都不会观察到它,因为它处于非阻塞模式。 – EJP
@EJP - 纠正自己。感谢您指出。如果有人愿意使用,Netty也有一个阻塞模式。 – Bhaskar
SO_TIMEOUT仅适用于OIO传输,Netty不会因此而关闭连接或引发任何异常或警报。 – trustin