resin配置websocket的超時時間不是通過程式代碼中直接調用WebSocketContext.setTimeout配置,因為這時候TcpPort已經創建完成,再配置超時時間不會對連接池裡的連接產生影響,所以需要設置啟動參數keepalive-timeout與socket-timeout,.....
resin配置websocket的超時時間不是通過程式代碼中直接調用WebSocketContext.setTimeout配置,因為這時候TcpPort已經創建完成,再配置超時時間不會對連接池裡的連接產生影響,所以需要設置啟動參數keepalive-timeout與socket-timeout,TcpSocketLink在構造函數中創建一個線程“KeepaliveRequestTask”,通過TcpSocketLink.handleKeepaliveTask處理請求及驗證當前連接合法性,其中超時驗證部分調用TcpPort.keepaliveThreadRead,其中採用“long timeout = Math.min(getKeepaliveTimeout(), getSocketTimeout());”計算出兩個參數中最小的超時時間。因此,要使用websocket的超時功能,需要註意“socket-timeout”與“socket-timeout”兩個參數。