国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

GatewayWorker 心跳問題

evilk

請教個關(guān)于心跳的問題

1.GatewayWorker 文檔中 技巧1,服務(wù)端不發(fā)送任何心跳數(shù)據(jù),
通過 客戶端主動發(fā)送的數(shù)據(jù)判斷客戶端是否存活,
如果是通過瀏覽器的websocket鏈接的,那是不是 要通過 js
通過 ws.send(xxxxx); 定時向service端 發(fā)送任意心跳數(shù)據(jù)呢,如果是定時發(fā)送任意心跳數(shù)據(jù),
這樣會不會 心跳數(shù)據(jù) 跟 正常的業(yè)務(wù)數(shù)據(jù) 混淆呢,這樣的話,是不是需要在service端的onMessage()
中 區(qū)分 心跳數(shù)據(jù) 與 業(yè)務(wù)數(shù)據(jù),而這個通過Js的定時,這個時間間隔 是隨意設(shè)定的嗎?

2.根據(jù)文檔來看,貌似 最好采用技巧2的方式,即 $gateway->pingNotResponseLimit = 2;
這樣service端能及時的知曉客戶端的鏈接情況,能這樣理解嗎?

7008 2 0
2個回答

walkor 打賞

1.onMessage里是要區(qū)分心跳數(shù)據(jù)和業(yè)務(wù)數(shù)據(jù)的。心跳間隔最好在1分鐘以內(nèi)。

是的,最好采用技巧2的方式。service能比較及時的直到客戶端異常下線的情況(斷網(wǎng) 斷電等)

  • evilk 2017-08-02

    問題2,寫錯了,應(yīng)該是 最好采用技巧1吧,大大是不是也看錯了,哈哈

  • walkor 2017-08-02

    對,技巧1

  • tl54577 2018-12-17

    @1:如果使用技巧1,如果客戶端突然掉線或者斷網(wǎng),服務(wù)端怎么知道連接已經(jīng)斷開呢

  • walkor 2018-12-17

    手冊有寫,客戶端超過心跳設(shè)置時間沒有發(fā)送數(shù)據(jù)就認(rèn)為斷開

Wakada

客戶端的主動心跳包肯定要在onMessage中做邏輯處理,
我目前采用的方式是通過客戶端與服務(wù)器約定的協(xié)議,例如所有發(fā)給Gateway的消息都必須帶上action這個參數(shù),例如action:ping,在onMessage中做swtich處理;

  • 暫無評論
年代過于久遠(yuǎn),無法發(fā)表回答
??