網易雲信周梁偉 聊聊搭建無上限人數直播聊天室

2021-08-19 12:37:24 字數 1614 閱讀 9800

-客戶端多樣

-資料安全需要保障

-網路抽風/單點故障

-使用者量上來了

-架構撐不住

-訊息慢

同時,我們評判乙個穩定、無上限人數的聊天室架構應該具備這些條件:

當前的網路安全角勢異常複雜,開發應用時如果不在通訊安全上花心思,那你的使用者就等於在網際網路上裸奔。開發者需要針對不同的平台,不同的通訊技術實現可靠的安全方案,避免使用者資料在傳輸過程中洩露。在選擇乙個雲提供商時,他們應該具備哪些雲安全認證和標準?是否有匹配具體安全服務型別的認證?其實安全需求跨度非常廣,涵蓋行業甚至企業自己內部,但是確有一些共性的需求來保證雲安全認證和標準的開發。一些標準很明顯是適用的,比如c-star認證和iso27001,都是國際通行的資訊保安方面的認證體系。

因此在通訊安全方面,對客戶端與伺服器端之間的通訊資料需進行加密壓縮處理,加密秘鑰的有效期控制在單次會話過程中,每次會話需要通過非對稱加密演算法來協商本次會話使用的加密秘鑰,再使用此秘鑰對請求和響應包資料做流加密。一則幫使用者節省了網路流量,提高資料傳輸效率,二則保證了通訊資料的安全性,規避資料洩露或中間人攻擊等各種安全風險。

安全問題是最最重要的,誰也不希望在看直播、聊天娛樂的時候洩露太多的東西,所以加密處理是直播聊天室必須要做的,也是為了我們能享受這個網路虛擬環境在技術上做的努力。

圖8:資料加密

3、架構的水平擴充套件性應對任何使用者量級的需求

任何硬體和軟體都存在故障的可能,我們無法避免應用罷工,那就需要隨時準備替補上場。

你一定聽說過「藍翔畢業生挖斷機房光纜」這樣的故事吧,也聽說過天津港爆(bao)炸(zha)引起idc機房受損這樣的真實事件吧,當這種不可**的天災人禍降臨的時候,如果能不影響服務的話那就更厲害了,所以現在服務提供方都在提「異地雙活」之類的高可用方案。更不用提伺服器宕機之類的這種家常便飯的小故障了,所以在服務設計時都需要消除可能存在的單點。

路由層承擔了閘道器接入層和業務層之間解耦的功能,資料報到達接入層之後通過路由層中轉送達到正確的業務節點。同時具有負載均衡和高可用的能力,在單個業務節點處理能力達到瓶頸時能方便快速的擴容;路由層使業務層擴容對前置閘道器層完全透明,當乙個網路的業務集群出現網路故障時,可以切換到備用網路,保證服務可用性。

5、業務節點的可替代性

從業務層上來說,聊天室功能上的業務節點主要用於處理收發聊天室訊息,成員進出鑑權等具體的業務邏輯,集群內有眾多節點,它們角色相互對等,單節點的故障可能會使集群的業務處理能力受影響但不會引起服務的中斷,在節點故障發生時可以快速增加新的替代節點(就是新開伺服器)來恢復集群的業務處理能力,此外業務集群有多個網路環境的熱備(這個就是上面說的多個可用域),以應對可能出現的區域性網路故障。

總之,以上的技術都是在為乙個穩定而安全的直播聊天室服務,沒有以上技術的加持,這一場主播和觀眾的互動聊天大戲是沒有辦法進行下去的,更別說全民參與直播、**直播了。

技術的發展讓使用者體驗越來越出色,以上的難點正在乙個乙個被攻破,技術人員的責任也是越來越重大。在直播熱的今天,觀眾人數的急劇膨脹,使用者需求的不斷增加,流量高峰期不期而遇,這樣的時刻,直播聊天室的穩定性和不卡頓,將給主播和觀眾提供最優的直播互動體驗。

網易雲信周梁偉專訪 億級架構IM平台的技術難點解析

u0026 xd n 自從8月20號子彈簡訊在錘子發布會露面之後,關於它的討論不絕於耳,7天融資1.5億的傳聞更是將它推到了風口浪尖。同時很多技術人開始分析它的 挖出了它的im系統其實不是自研,而是使用網易雲信提供的第三方服務。有人質疑說,第三方的sdk做乙個demo跑跑還可以,能拿來開發正式產品嗎...

網易雲信周梁偉專訪 億級架構IM平台的技術難點解析

自從8月20號子彈簡訊在錘子發布會露面之後,關於它的討論不絕於耳,7天融資1.5億的傳聞更是將它推到了風口浪尖。同時很多技術人開始分析它的 挖出了它的im系統其實不是自研,而是使用網易雲信提供的第三方服務。有人質疑說,第三方的sdk做乙個demo跑跑還可以,能拿來開發正式產品嗎?本文就想來談談im開...

聊一聊 網易雲課堂

首先說明,這不是廣告,知識我個人的一點感受而已 若干天之前註冊了網易雲課堂,並填寫 郵寄申請講師的材料。若干天之後的今天,終於收到通知,我通過了講師認證,給我名字上加了個大大的 v 以及 petshop4.0原始碼解讀 教程通過了審核,正式發布了。下班之前看了看,竟然已經有6名學習者了,就是不知道他...