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

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

邏輯層廣播到網(wǎng)管層會不會太浪費資源了呢

上一節(jié)課,不是說可以維護,用戶連接,房間一個映射關(guān)系嗎,通過這個映射關(guān)系推送到指定的網(wǎng)管層,與直接廣播到所有的網(wǎng)管節(jié)點有啥利弊呢

正在回答

3 回答

前置前置再前置,把合并越推向原點,對系統(tǒng)整體優(yōu)化效果更佳,掌握這一點即可!

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

字數(shù)限制。


實際上內(nèi)部通訊也需要合并推送,這個出于簡化原因我沒有實現(xiàn)在開源代碼里。 所有的無狀態(tài)logic應(yīng)該按room推送消息到消息隊列(按room分區(qū)),然后通過pusher服務(wù)去完成房間粒度的消息合并,并廣播給gateway。


思考架構(gòu)問題需要考慮場景,切忌空談性能,在具體場景下有具體的難點和具體的應(yīng)對方案,這個思想很重要。


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

嗯,這個問題很有意思,引申出了這個分布式系統(tǒng)后續(xù)的一些走向,我簡單延伸一下。


  1. 如果是定向給某個用戶推送,我們一般會在邏輯服務(wù)器后面設(shè)計一層session服務(wù),記錄用戶在哪些gateway上,從而減少不必要的廣播。

  2. 如果是定向給某個房間推送,需要我們主動的連接調(diào)度,用戶進入房間前先詢問服務(wù)端,由服務(wù)端指派網(wǎng)關(guān)節(jié)點地址,這樣盡量來把同一個房間的用戶聚集在一起,你可以想一下增加這個特性的性價比有多少。


我覺得在彈幕場景里,內(nèi)部節(jié)點之間的廣播消息量并不是瓶頸(特指內(nèi)網(wǎng)帶寬瓶頸),因為100萬人*10個網(wǎng)關(guān)在線,你推送1條彈幕的瓶頸永遠在網(wǎng)關(guān)層。

所以,在考慮生產(chǎn)環(huán)境的擴展性架構(gòu)決策時,gateway+logic應(yīng)該作為一個服務(wù)單元(我們也稱為set),通過部署多套set來實現(xiàn)大規(guī)模集群部署,具體一個房間只需要調(diào)度到某個set即可保障其高可用和高吞吐。

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

i歲月無聲 提問者

對于一個直播平臺除了幾個大房間之外還有其他的房間,有任何一個消息,都廣播到所有網(wǎng)關(guān)層,這個壓力不會成為系統(tǒng)瓶頸嗎?
2018-08-01 回復(fù) 有任何疑惑可以回復(fù)我~
#2

小魚兒老師 回復(fù) i歲月無聲 提問者

嗯,彈幕系統(tǒng)是讀比寫要多多多多多多多的場景,大主播的彈幕頻率你完全可以以1萬/秒來計算,對每個gateway的廣播壓力就是1萬/秒,gateway來說是毛毛雨,對logic來說也是毛毛雨。 在這個量級下,對外推送的帶寬就很大了,要乘上在線用戶數(shù)(比如100萬),那就是1000萬/秒的推送系統(tǒng)啦。 上述是一個set內(nèi)的情況,你能無限的部署set,那么擴展性就永遠不是問題,大不了一個主播一個set,只要公司有錢買服務(wù)器和帶寬。
2018-08-01 回復(fù) 有任何疑惑可以回復(fù)我~
#3

精慕門4429612

哈哈哈哈哈
2018-08-03 回復(fù) 有任何疑惑可以回復(fù)我~
#4

精慕門4429612 回復(fù) 精慕門4429612

哈哈哈哈哈
2018-08-03 回復(fù) 有任何疑惑可以回復(fù)我~
#5

i歲月無聲 提問者 回復(fù) 小魚兒老師

還有一個問題,類似直播間內(nèi)用戶發(fā)彈幕,可以使用長連接發(fā)送上行消息,有的使用http接口發(fā)送彈幕消息到服務(wù)器在轉(zhuǎn)發(fā)到IM服務(wù)器,實際場景中,這兩種方式有什么優(yōu)劣呢
2018-08-08 回復(fù) 有任何疑惑可以回復(fù)我~
查看2條回復(fù)

舉報

0/150
提交
取消

邏輯層廣播到網(wǎng)管層會不會太浪費資源了呢

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

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

幫助反饋 APP下載

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

公眾號

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