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