日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java spring 服务器关闭连接_java springboot websocket 服务 服务器主动关闭连接 导致 抛出java.io.EOFException异常...

發(fā)布時間:2023/12/19 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java spring 服务器关闭连接_java springboot websocket 服务 服务器主动关闭连接 导致 抛出java.io.EOFException异常... 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

遇到這個問題不要慌,去查查眾說紛紜。那我就在這里總結(jié)一下吧

存在此問題的有以下幾種情況

1、ws連接不穩(wěn)定經(jīng)常斷線;

答:

1)可能是客戶和服務(wù)器之間的網(wǎng)絡(luò)問題

2)可能是服務(wù)端內(nèi)存不夠用導(dǎo)致線程被異常清理

2、ws連接成功后過一點(diǎn)時間后就自動斷開

答:

1)一般情況下是nginx轉(zhuǎn)發(fā)或者 tomcat的連接超時導(dǎo)致容器層主動關(guān)閉這個連接

(1)修改容器層tomcat或者nginx【proxy_read_timeout 5000s; keepalive_timeout 5000s;】配置即可,但是治標(biāo)不治本不推薦

(2)服務(wù)端主動向客戶端發(fā)送心跳消息的發(fā)送,不推薦,因為會導(dǎo)致服務(wù)端負(fù)荷

(3)客戶端主動向服務(wù)端發(fā)送心跳消息,我個人情況下比較推薦這種方案

3、ws連接之后服務(wù)端由于鑒權(quán)失敗等各種原因服務(wù)器主動關(guān)閉連接導(dǎo)致拋出該異常

答:解決代碼在下面【重點(diǎn)在于CloseReason.CloseCodes.TLS_HANDSHAKE_FAILURE錯誤碼,當(dāng)你使用這個錯誤碼會導(dǎo)致io錯誤,意思是握手失敗】

/**

* 操作進(jìn)行下線

* @param session

*/

public void optClose(Session session){

// 判斷當(dāng)前連接是否還在線

if (session.isOpen()){

try {

// 關(guān)閉連接

CloseReason closeReason = new CloseReason(CloseReason.CloseCodes.NORMAL_CLOSURE,"鑒權(quán)失敗!");

session.close(closeReason);

} catch (IOException e) {

e.printStackTrace();

}

}

}

注意:當(dāng)發(fā)生異常錯誤時,應(yīng)該及時關(guān)閉連接并且處理相關(guān)用戶的上下線操作!

原文:https://www.cnblogs.com/qianxiaoPro/p/14336412.html

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎

總結(jié)

以上是生活随笔為你收集整理的java spring 服务器关闭连接_java springboot websocket 服务 服务器主动关闭连接 导致 抛出java.io.EOFException异常...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。