請教個問題:在相同IP和端口號的情況下建立的連接,在短時間里內(nèi)重連,重連的時候會被踢下線,業(yè)務(wù)代碼什么都沒有寫,這是為什么?
業(yè)務(wù)bug
@1459:客戶端 當(dāng)同一IP同一端口號 短時間重連 會遇到這個問題 但是當(dāng)端口號不同的時候,就不會有這個問題出現(xiàn) 不知道是哪里的問題 linux lsof:端口號命令 也看不到有這個連接在線 應(yīng)該是被服務(wù)端T掉了的
@1459:想了解下workerman底層 是否是根據(jù)IP和端口號生成的socket連接,如果是,那么,會不會是把第二次的連接當(dāng)成了第一次的連接從而踢掉了
我理解你的意思了,發(fā)起連接的時候你復(fù)用了本地端口。本地端口沒那么快回收的,所以你快速復(fù)用一個端口造成連接建立失敗,實際上連接都沒建立起來就失敗了
連的時候不要指定本地固定端口去連。因為你機(jī)器重啟了服務(wù)端不一定知道,服務(wù)端操作系統(tǒng)認(rèn)為這個連接還連著,并記錄客戶端本地端口。當(dāng)你再用這個端口去連的時候服務(wù)端操作系統(tǒng)會認(rèn)為你這個是或者上個連接是非法連接,就會有問題
@1459:客戶端連接其他的非workerman socket測試服務(wù)端都沒有問題的,這邊自己用其他語言也寫了幾個socket服務(wù)端,都沒有問題,唯獨使用php workerman框架 會出現(xiàn)這個問題,會不會是workerman釋放失去的連接,邏輯處理上有一些問題?。壳筚n教