websocket 連接后客戶端發(fā)送心跳檢測數(shù)據(jù)到服務(wù)器,服務(wù)器接收到心跳檢測后返回一個(gè)數(shù)據(jù)到客戶端,但是網(wǎng)頁開車啥也不干有時(shí)候幾個(gè)小時(shí)后就自動斷掉了,為啥會自動斷開
客戶端一直都是定時(shí)發(fā)送數(shù)據(jù)到服務(wù)器保持通行的,關(guān)鍵是斷開的時(shí)間不確定,有時(shí)間一下午都不斷開,有時(shí)候幾個(gè)小時(shí)就自動斷開了
長連接斷開很正常吧。服務(wù)端重啟、網(wǎng)絡(luò)切換、設(shè)備黑屏睡眠斷網(wǎng)、瀏覽器最小化停止運(yùn)行、應(yīng)用進(jìn)入后臺、心跳間隔太長連接被路由節(jié)點(diǎn)踢掉、網(wǎng)絡(luò)環(huán)境差等等太多原因了,這個(gè)已經(jīng)不是程序可控制的了。最重要的是客戶端要有重連機(jī)制,檢測到斷開后重連啊。不要指望長連接能一直維持到永遠(yuǎn),那是不現(xiàn)實(shí)的