第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

分布式環(huán)境下單點通信的問題

非常感謝老師的講解,但是還有個疑問:

在分布式環(huán)境下如何進行單點通信?

并不知道目標(biāo)用戶被分配在哪個服務(wù)器上

一有消息就向全部服務(wù)器推送?

正在回答

1 回答

????HI同學(xué),向單個用戶推送不建議廣播gateway。

會話層

????這個架構(gòu)需要繼續(xù)演進,允許長連接認(rèn)證(auth),這樣每個長連接就對應(yīng)一個用戶ID(uid)。

????當(dāng)我們要給某個uid推送的時候,需要知道uid對應(yīng)的長連接在哪些服務(wù)器上,所以我們需要實現(xiàn)一個會話層(session layer),最簡單的就是搭建一套redis cluster,把uid與gateway之間的關(guān)系記錄下來,然后基于客戶端心跳,去redis cluster中做刷新,避免關(guān)系過期。

????當(dāng)我們要給uid推送時,可以由logic去session層獲取uid所在gateway,然后定向推送到對應(yīng)gateway,避免集群內(nèi)廣播。

登錄

????實際工程中,我們不會把帳號密碼登錄放在gateway里實現(xiàn),而是寫一個單獨的認(rèn)證服務(wù)(一般會與公司的賬號系統(tǒng)打通),完成認(rèn)證后發(fā)放一個生命期很短的TOKEN,比如JWT,這個TOKEN是可以自驗證的。

????客戶端拿著token建到gateway的連接,然后auth提交token,由gateway直接驗證有效,完成會話的建立。

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消

分布式環(huán)境下單點通信的問題

我要回答 關(guān)注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號