環(huán)境:通過tcp連接著Gateway的智能硬件,已經(jīng)在Gateway綁定了uid,沒有使用心跳檢測; 問題:1)如果家里路由斷網(wǎng)了,持續(xù)一小時,Gateway是否會認為設備已掉線擦除了硬件的uid? 2)當網(wǎng)線重新連上后,之前綁定的uid是否已經(jīng)不存在Gateway上了?需要重新綁定?
1、沒有心跳檢測的話,服務端可能偵測不到客戶端已經(jīng)斷開。加心跳后如果偵測到socket斷開,那么uid對應的這個client_id就失效了,自動從uid對應的client_id列表中刪除這個斷開的client_id
2、重新連上服務端后需要重新驗證這個socket是誰,需要重新binduid。其實和mysql服務一樣,連接斷開后重連都需要重新驗證用戶身份的。