2020 年 10 月 31 日,由融云主辦的全球互聯(lián)網(wǎng)通信云大會(以下簡稱“WICC 2020”)在深圳召開。本次大會所設立的三個技術分論壇:“新趨勢:5G 下的新通信技術突破”、“新體驗:實時音視頻新應用場景”和“新架構(gòu):通信技術在業(yè)務架構(gòu)中的演進”,吸引了來自阿里云、AWS、愛奇藝、小鵬汽車、統(tǒng)信軟件、好未來、順豐科技、虎牙直播等眾多領先企業(yè)的技術領袖走上講壇,同時也吸引了上千名開發(fā)者前來學習和交流。
在這三場技術分論壇中,融云分享了《5G 時代的通信云 IoT 新應用》、《超大規(guī)模音視頻會議實踐》和《億級終端數(shù)據(jù)體量下的高并發(fā)架構(gòu)解析》三大議題。融云作為互聯(lián)網(wǎng)通信云賽道的頭部企業(yè),目前已累計支持超過 30 萬款APP,50 多億 SDK 觸達數(shù),日均消息 150 億,單日消息量峰值超過 2218 億。對開發(fā)者而言,融云所分享的應對超大規(guī)模用戶的實戰(zhàn)經(jīng)驗,以及高并發(fā)架構(gòu)的設計方案,都彌足珍貴。
5G 時代,IoT 新應用落地至關重要
在新基建和 5G 背景下,物聯(lián)網(wǎng)的實現(xiàn)將為整個社會帶來巨變。融云研發(fā)總監(jiān)李會朝認為:在物聯(lián)網(wǎng)場景下,通過集成麥克風和攝像頭,并保持實時在線,這樣便賦予了硬件以大腦識別和音視頻的通信能力,這個硬件就是智能硬件。智能兒童手表、AR 眼鏡、智能門禁、智能機器人、智能音箱、車載導航儀、執(zhí)法記錄儀、礦帽、停車場收費器等均屬于智能硬件,而作為底層的通信能力,在賦能智能硬件的同時,需要根據(jù)使用場景特點提供解決方案。例如,停車收費器和遠程門禁,因戶外的場景空曠嘈雜,解決方案就要做到把人聲收進去,把噪音濾出去,優(yōu)化通信效果。
融云研發(fā)總監(jiān)李會朝演講
分享中,李會朝著重闡述了智能硬件音視頻能力的適配技術。由于不同的芯片廠商硬件表現(xiàn)差異,尤其是在視頻編解碼芯片、硬件采集、降噪模塊上的差異,會導致花屏/黑屏、無聲/噪音等問題。所以在視頻適配方面,可通過分辨率 16 位對齊、動態(tài)切換編解碼等解決方案;在音頻適配方面,可通過聲音的采集源、采樣率、聲道數(shù)、傳輸碼率的選擇,以及采用硬件處理和軟件算法結(jié)合的方式來消除無聲、回聲、噪聲問題。
除了適配技術外,李會朝還強調(diào)了融云 SDK 的功能特點,“融云 SDK 具有接口易理解、功能易擴展和架構(gòu)分層等特點。”在 SDK 的提供方式上,包括可提供基礎音視頻通話能力的RTCLib SDK 底層能力庫,基于 RTCLib 封裝的呼叫能力庫 CallLib,以及基于 CallLib 呼叫能力的 UI 組件 CallKit 等,可隨時為客戶提供調(diào)用。在對未來技術展望時,李會朝特別分享了 H265 / H266(VVC),以及 RTOS 的優(yōu)勢,他認為在物聯(lián)網(wǎng)行業(yè),RTOS 系統(tǒng)才是真正的王者。
超大量級的在線應用是對實時音視頻通信能力的終級大考
隨著在線應用的大面積普及,在線人數(shù)的量級也不斷攀升,這給音視頻的通信架構(gòu)設計帶來極大考驗。例如當下已經(jīng)觸達千行百業(yè)的遠程會議場景,同樣的音視頻架構(gòu),在十幾人的會議中,體驗或許十分流暢,但如果是 200 人,甚至 2000 人的超大規(guī)模音視頻會議時,就可能全面癱瘓。那么融云又是如何做到應對自如的呢?融云音視頻首席架構(gòu)師岑裕在分析了 P2P、MCU、SFU 三個音視頻典型架構(gòu),以及各自利弊后指出:盡管隨著客戶端硬件性能不斷提升,SFU 越來越受到大家的青睞,但是在超過 20 人會議場景下,SFU 及 WebRTC 兼容場景仍然無法很好的解決。
融云音視頻首席架構(gòu)師岑裕演講
在超大規(guī)模會議場景音視頻能力輸出的應對策略上,融云分別從視頻和音頻兩方面著手,采取按需訂閱與按需轉(zhuǎn)發(fā)的模式。例如在視頻上,發(fā)送端視頻編碼支持大小流或 SVC,接收端按需訂閱大流或小流,弱網(wǎng)下自動切換大小流,從而大幅降了整體流量,特別是服務器端可直接下降 85%,獲得了性價比的超高提升。在音頻上,當發(fā)送端靜音時不發(fā)送數(shù)據(jù),在降低上行流量情況下,自然降低下行流量;音頻解碼后,默認混流播放音量最大 3-5 路聲音,來兼顧流量和體驗;在服務端通過計算 Buffer 和彈出 Timer 進行音頻按需分發(fā),在不損害音質(zhì)的前提下,使流量下降 43%。從服務端的下行流量來看,對于一個 200 人的會議而言,已經(jīng)降到 800 多兆,對客戶端而言,已經(jīng)降到了 4 兆,對流量控制基本做到了最佳狀態(tài)。
此外,融云對客戶端性能還有更多的優(yōu)化。如增加 WebRTC 對多 SSRC 模式的 Audio Level 的支持;訂閱視頻數(shù)量較多時,將硬解和軟解結(jié)合等進行優(yōu)化。
綜上,按需轉(zhuǎn)發(fā)和按需訂閱對于服務器端和客戶端而言已經(jīng)沒有太大壓力,而在超大會議室場景下,已經(jīng)可以跟小會議室一樣,所有人能正常收聽,正常的交流,基本達到了預期的效果。
應對億級終端數(shù)據(jù) 高并發(fā)架構(gòu)需精心設計與持續(xù)優(yōu)化
融云高級架構(gòu)師李宏博演講
即使在 5G 時代,在線應用仍然繞不開高并發(fā)的系統(tǒng)設計,這也是架構(gòu)師們公認的難點。融云高級架構(gòu)師李宏博在分享高并發(fā)系統(tǒng)設計心得時指出:首先,不管是結(jié)構(gòu)還是各種各樣的業(yè)務代碼,都需要精心設計,并不斷提升代碼質(zhì)量,這是一個持續(xù)優(yōu)化的過程。其次是要不斷完善系統(tǒng)體系,包括監(jiān)控體系、運維系統(tǒng)、開發(fā)以及測試過程的工具鏈等,離開這些工具的助力,提升性能的效率就會被牽制。
在高并發(fā)整體的設計中,需要考慮 CPU、內(nèi)存、網(wǎng)絡和存儲。因為 CPU 優(yōu)化了數(shù)據(jù)結(jié)構(gòu)與算法,選擇序列化、并發(fā)模型,和使用資源定位,就是為了高效利用 CPU;考慮內(nèi)存是為了控制體積,選擇 LRU、LIRS,用一致性哈希資源定位,也是為了減少內(nèi)存;在網(wǎng)絡方面,融云架構(gòu)使用了 Actor 模型,是要減少一次網(wǎng)絡交互;而做數(shù)據(jù)包合并和序列化協(xié)議,也都是為了能夠高效地利用 CPU 內(nèi)存。而存儲方面,分庫分表、NewSQL 以及多種存儲介質(zhì)應按需選擇,因為只有適合的才是最好的。
監(jiān)控體系在高并發(fā)架構(gòu)中舉足輕重,總體來說,與性能相關的就是 APM,監(jiān)控的維度是你能想到的所有指標和能用上的所有手段。一旦有所缺失,可能永遠不知道系統(tǒng)里發(fā)生了什么,錯誤出在哪里。
在性能優(yōu)化方面,李宏博強調(diào):持續(xù)優(yōu)化和改進是永恒的主題,如果多花一些心思在編碼階段,比如異步處理需求、落點相對固定、提升緩存命中率、合并請求減少網(wǎng)絡交互等,將來在性能上產(chǎn)生的問題就會越少。
結(jié)語
WICC 2020 是融云構(gòu)建的一個產(chǎn)業(yè)同仁共同探討和分享前沿技術的平臺,并且已經(jīng)發(fā)展成為幫助開發(fā)者成長和交流的技術盛宴。三場技術論壇所有講師的演講都是干貨滿滿,令開發(fā)者受益頗豐。在問答環(huán)節(jié),場上場下互動熱烈,開發(fā)者們問得穩(wěn)、準、狠,講師們答得精、專、透。此次融云將自身多年來在即時通訊和實時音視頻領域的實踐經(jīng)驗與開發(fā)者分享,既體現(xiàn)了融云作為行業(yè)領導者的格局和擔當,也勢必引領行業(yè)技術的發(fā)展熱潮,為全球開發(fā)者們帶來更多的技術創(chuàng)新思維和啟迪。
申請創(chuàng)業(yè)報道,分享創(chuàng)業(yè)好點子。點擊此處,共同探討創(chuàng)業(yè)新機遇!