客戶端鏈接GateWay后 無(wú)限向客戶端發(fā)送消息 怎么解決 Events.php onMessage 無(wú)限向客戶端發(fā)送消息 導(dǎo)致客戶端卡死
應(yīng)該是你代碼邏輯問題,你的業(yè)務(wù)邏輯估計(jì)是客戶端收到消息后給服務(wù)端發(fā)送一條消息,服務(wù)端邏輯也是服務(wù)端收到一條消息后給客戶端發(fā)送一條消息。那么不管服務(wù)端還是客戶端,主要發(fā)一條消息就無(wú)限循環(huán)發(fā)送了。
話說(shuō),你能寫出這樣的業(yè)務(wù)邏輯而且排查不出問題,建議趁早改行。
貼完整的處理代碼.gateway本身就會(huì)發(fā)送心跳數(shù)據(jù),不管是什么語(yǔ)言,想要保持連接,都需要心跳數(shù)據(jù),但是發(fā)送頻率較低,不至于導(dǎo)致客戶端卡死.我看你的數(shù)據(jù)是自定義的,中間并沒有默認(rèn)的心跳數(shù)據(jù),數(shù)據(jù)發(fā)送頻率過高,業(yè)務(wù)邏輯應(yīng)該有問題
用這個(gè)的沒有幾萬(wàn)也有幾千人吧,怎么可能會(huì)出現(xiàn)無(wú)限發(fā)送,這個(gè)是你業(yè)務(wù)代碼問題,跟Events.php onMessage 沒有任何關(guān)系,貼出自己業(yè)務(wù)代碼,不然只能自己去排查
無(wú)限循環(huán),肯定是業(yè)務(wù)邏輯有bug。你要想別人幫你得貼出業(yè)務(wù)邏輯代碼,包括客戶端和服務(wù)端代碼。沒代碼被人怎么幫你呢。