成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

幾十萬人同時在線的直播間聊天,如何設計服務端架構?

Jeff / 2134人閱讀

摘要:一個熱門視頻直播間人數(shù)可能達到幾十萬甚至上百萬人,幾十萬人發(fā)消息,幾十萬人接收,流量相當驚人,那么服務端要如何設計才能保證系統(tǒng)流暢本文作者將結合他在網(wǎng)易云信多年開發(fā)的經(jīng)驗進行深度分析。網(wǎng)易云信至今已申請了余項專利,遠超市場同類產(chǎn)品。

一個熱門視頻直播間人數(shù)可能達到幾十萬甚至上百萬人,幾十萬人發(fā)消息,幾十萬人接收,流量相當驚人,那么服務端要如何設計才能保證系統(tǒng)流暢?本文作者將結合他在網(wǎng)易云信多年IM開發(fā)的經(jīng)驗進行深度分析。

推薦閱讀

高并發(fā) IM 系統(tǒng)架構優(yōu)化實踐

IM 即時通訊:如何跳出傳統(tǒng)思維來設計聊天室架構?

聊天室架構應滿足哪些條件

高可用:任何一個節(jié)點故障都不應該引起服務不可用;

易擴展:具有水平擴展的特性,對不同量級的在線用戶數(shù)都有應變的能力;

高并發(fā)低延遲:能支持大量的用戶同時收發(fā)消息,消息從發(fā)出到送達所有在線端的延時在毫秒級;

客戶端兼容性:新型的應用都是能同時跨多種設備實現(xiàn)消息互通的,比如網(wǎng)頁端,手機端和桌面端,甚至智能電視等。

聊天室架構如何設計

客戶端層

處理各種設備的兼容問題,包括對 iOS, Android, Windows, Web 等各種開發(fā)平臺的語言適配;消息通道的管理維護,包括移動設備上的弱網(wǎng)絡管理,斷線重連等;保證數(shù)據(jù)安全,所有上行下行的數(shù)據(jù)包都需要加解密處理,規(guī)避數(shù)據(jù)泄露或中間人攻擊等各種安全風險。

網(wǎng)關接入層

管理大量客戶端連接,單個節(jié)點可以維護的客戶端數(shù)量在數(shù)十萬量級;處理不同類型客戶端的協(xié)議兼容,由于客戶端實現(xiàn)技術的多樣性,導致客戶端與網(wǎng)關之間底層的數(shù)據(jù)通信協(xié)議存在差異,需要由不同的接入網(wǎng)關做協(xié)議轉換;處理數(shù)據(jù)安全邏輯;跨網(wǎng)絡的高可用邏輯,網(wǎng)絡級別的主備(誰知道哪天網(wǎng)線會被藍翔的畢業(yè)生挖斷呢?);廣播消息的高效下行分發(fā),將收到的廣播消息分發(fā)到所有連接在本節(jié)點上的客戶端。

路由層

作為業(yè)務層接入的中轉,同時承擔負載均衡和高可用的作用,單個業(yè)務節(jié)點處理能力達到瓶頸時更方便的擴容,路由層使業(yè)務層擴容對前置網(wǎng)關層完全透明;當一個網(wǎng)絡的業(yè)務集群出現(xiàn)網(wǎng)絡故障時,可以切換到備用網(wǎng)絡,保證服務可用性。

業(yè)務層

處理聊天室內(nèi)的業(yè)務消息,一個集群內(nèi)有眾多節(jié)點,節(jié)點角色相互對等,任何一個節(jié)點的故障會使整個集群的處理能力下降,但不會引起服務的中斷,因為其他節(jié)點可以繼續(xù)接管業(yè)務數(shù)據(jù)包的處理;業(yè)務集群同樣有多個網(wǎng)絡環(huán)境的熱備,以應對可能出現(xiàn)的區(qū)域性網(wǎng)絡故障。

難點在哪里

客戶端多樣性

目前的應用都存在跨平臺的需求,iOS、安卓和 PC 端,網(wǎng)頁端,甚至 IoT 物聯(lián)網(wǎng)設備,能連多少是多少,多多益善;但是不同開發(fā)平臺之間的技術差異性極大,不是所有公司都有這么全的全棧程序猿的;如果團隊開發(fā)的話單就客戶端開發(fā)人員就不是幾個人可以完成的。

數(shù)據(jù)安全的保證

當前的網(wǎng)絡安全形勢異常復雜,開發(fā)應用時如果不在通信安全上花心思,那你的用戶就是在互聯(lián)網(wǎng)上裸奔;開發(fā)者需要針對不同的平臺,不同的通信技術實現(xiàn)可靠的安全方案,避免用戶數(shù)據(jù)在傳輸過程中泄露,避免中間人攻擊等安全風險。

跨機房網(wǎng)絡級的高可用方案

當機房網(wǎng)絡出現(xiàn)故障時把責任推給市政施工隊或者“網(wǎng)絡抽風”已經(jīng)不流行了,用戶需要的是故障無感知。

所有環(huán)節(jié)的單點故障排除

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

能應對任何用戶量級的需求

架構級做到水平擴展的能力,當用戶量增長時隨時可以通過堆服務器來解決,而不是將架構推倒重來。

看完文章還是不知道怎么做?那么可以嘗試借用目前已有的平臺或工具,現(xiàn)在應用需要關注的是怎么以最快的速度抓住用戶。網(wǎng)易云信是一個面對開發(fā)者的很好的 IM 云平臺。十余年的研發(fā)積累,使其在即時通訊技術方面處于全國領先水平。網(wǎng)易云信至今已申請了 60 余項 IM 專利,遠超市場同類產(chǎn)品。歡迎大家與我們討論 IM 技術,也歡迎大家多多關注網(wǎng)易云信。

隨著即時通訊以及音頻處理和壓縮技術的不斷發(fā)展,效果更好、適用范圍更廣、性能更高的算法和新的技術必將不斷涌現(xiàn),如果你有好的技術或者分享,歡迎關注網(wǎng)易云信官方博客和 GitHub:

關注更多技術干貨內(nèi)容:網(wǎng)易云信博客
歡迎關注網(wǎng)易云信 GitHub
歡迎關注網(wǎng)易云信官網(wǎng)

文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://systransis.cn/yun/71497.html

相關文章

  • 如何打造在線播間(技術貼)

    摘要:背景當下視頻直播如此紅火,打造一個在線直播間涉及到哪些技術呢視頻直播由主播的直播端以及觀眾的觀看端組成。保持心跳斷開重連快速搭建在線直播間按前文所述,搭建直播間有非常多的細節(jié)需要考慮,包括采集推流分發(fā)播放體驗優(yōu)化聊天室性能調(diào)優(yōu)等。 背景 當下視頻直播如此紅火,打造一個在線直播間涉及到哪些技術呢? 視頻直播由主播的直播端以及觀眾的觀看端組成。一個簡單的觀看端最起碼應包含播放器以及聊天室。...

    sugarmo 評論0 收藏0
  • 海量用戶實時互動直播架構探索

    摘要:實時互動直播延時必須低達幾百毫秒。實時互動直播要保證高可用性,有巨大的難度,原因如下實時很難。單服務器實時互動直播架構實時互動直播,不能使用方案,因為方案性質決定了延時達不到實時的要求。 現(xiàn)在比較流行的直播,經(jīng)常會出現(xiàn)這樣的情況: 用戶打了一個彈幕上去,主播念出來的時候,彈幕已經(jīng)飛出去了。二者時間是不匹配的。 這是我們的一個客戶,兩個主播連線互動,實時交互。試想,如果直播時延時高達幾秒...

    honmaple 評論0 收藏0
  • 視頻私有云實戰(zhàn):基于 Docker 構建點播私有云平臺

    摘要:本篇文章將會結合網(wǎng)易云信的實踐經(jīng)驗,以全局概述的方式帶大家認識點播私有化平臺構建的整體架構面貌?;跇嫿c播私有云平臺在具有以上優(yōu)勢的同時,還具備資源彈性管理監(jiān)控完善部署簡易自動化維護等特性。基于構建平臺,能夠自由管理創(chuàng)建云主機。 私有云是為一個客戶單獨使用而構建的,因而提供對數(shù)據(jù)、安全性和服務質量的最有效控制。前置條件是客戶擁有基礎設施,并可以使用基礎設施在其上部署應用程序。其核心屬...

    MadPecker 評論0 收藏0
  • 視頻私有云實戰(zhàn):基于 Docker 構建點播私有云平臺

    摘要:本篇文章將會結合網(wǎng)易云信的實踐經(jīng)驗,以全局概述的方式帶大家認識點播私有化平臺構建的整體架構面貌?;跇嫿c播私有云平臺在具有以上優(yōu)勢的同時,還具備資源彈性管理監(jiān)控完善部署簡易自動化維護等特性?;跇嫿ㄆ脚_,能夠自由管理創(chuàng)建云主機。 私有云是為一個客戶單獨使用而構建的,因而提供對數(shù)據(jù)、安全性和服務質量的最有效控制。前置條件是客戶擁有基礎設施,并可以使用基礎設施在其上部署應用程序。其核心屬...

    jkyin 評論0 收藏0

發(fā)表評論

0條評論

Jeff

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<