融云高質(zhì)量實(shí)時(shí)通信架構(gòu) 為多場(chǎng)景應(yīng)用保駕護(hù)航

2021年3月27日,融云X-Meetup技術(shù)沙龍第二站落地南京。這場(chǎng)以“高質(zhì)量高并發(fā)的實(shí)時(shí)通信架構(gòu)設(shè)計(jì)與探索”為主題的開發(fā)者活動(dòng),邀請(qǐng)到融云音視頻工具研發(fā)工程師王煒、IM 高級(jí)研發(fā)工程師齊新兵、殼殼互聯(lián)軟件工程師張熙文、虎克CEO過巍四位大咖,向現(xiàn)場(chǎng)的開發(fā)者們分享了各自領(lǐng)域的干貨。

融云高質(zhì)量實(shí)時(shí)通信架構(gòu) 為多場(chǎng)景應(yīng)用保駕護(hù)航

融云X-Meetup技術(shù)沙龍 南京站現(xiàn)場(chǎng)

音視頻SDK架構(gòu)設(shè)計(jì),重在穩(wěn)定可靠

沙龍上,融云音視頻工具研發(fā)工程師王煒首先發(fā)表了《融云音視頻 SDK 架構(gòu)分享與應(yīng)用》的演講。他認(rèn)為,談到 SDK 架構(gòu)設(shè)計(jì),融云音視頻 SDK 因簡(jiǎn)潔易用、通俗易懂、可分層架構(gòu)、可替換可復(fù)用、易于維護(hù)等諸多優(yōu)點(diǎn),為廣大開發(fā)者所熟知。這既是融云音視頻SDK架構(gòu)設(shè)計(jì)的經(jīng)驗(yàn)總結(jié),也是融云音視頻SDK架構(gòu)設(shè)計(jì)的總原則。

目前,融云音視頻SDK架構(gòu)主要由API接口層、數(shù)據(jù)模型層、會(huì)話管理層、基礎(chǔ)組件層和信令層組成。在數(shù)據(jù)模型層,設(shè)計(jì)應(yīng)面向業(yè)務(wù)邏輯、面向用戶,要關(guān)注數(shù)據(jù)模型不同的生命周期,兼顧讀開放、寫限制。尤其不可忽視的是要做好保護(hù)性拷貝,以便后續(xù)的運(yùn)營(yíng)維護(hù)。

融云高質(zhì)量實(shí)時(shí)通信架構(gòu) 為多場(chǎng)景應(yīng)用保駕護(hù)航

融云音視頻SDK架構(gòu)

在分享會(huì)話管理層的設(shè)計(jì)要點(diǎn)時(shí),王煒直接以框架設(shè)計(jì)圖來闡釋音視頻采集、前處理、編碼、傳輸、解碼、后處理、渲染各狀態(tài)相互之間的邏輯關(guān)系。簡(jiǎn)捷而直觀的表達(dá),幫助開發(fā)者更好地理解其設(shè)計(jì)的精髓。

融云高質(zhì)量實(shí)時(shí)通信架構(gòu) 為多場(chǎng)景應(yīng)用保駕護(hù)航

會(huì)話管理層合理設(shè)計(jì)架構(gòu)

在基礎(chǔ)組件層,王煒指出,因其面向底層設(shè)備硬件資源,是一個(gè)獨(dú)立的任務(wù)管理系統(tǒng),因此要更注重模塊功能的內(nèi)聚,具備非直接耦合和接口隔離;而信令層的設(shè)計(jì),則要求能夠封裝IM信令通道和進(jìn)行Http請(qǐng)求,使之具有獨(dú)立于業(yè)務(wù)功能的邏輯,不僅要有基本的通信能力,還可拆包、封包,并且不允許跨層調(diào)用。

大規(guī)模即時(shí)通訊客戶端日志系統(tǒng),重在發(fā)現(xiàn)問題

目前,融云 SDK 服務(wù) 30 萬款 App, 總觸達(dá)數(shù)超過 50 億,日均消息量突破 150 億,日均活躍用戶 7000 萬,日消息峰值高達(dá) 2218 億條,秒峰值消息 2000 萬條。這些數(shù)據(jù)實(shí)實(shí)在在地見證了融云大規(guī)模通信架構(gòu)的高光時(shí)刻。

在高光時(shí)刻的背后,融云IM 高級(jí)研發(fā)工程師齊新兵坦言,“當(dāng)一秒鐘要完成 2000 萬條消息的分發(fā)時(shí),不只是我們自己的研發(fā)、運(yùn)維團(tuán)隊(duì),甚至是我們運(yùn)營(yíng)商、機(jī)房的人都時(shí)刻在擔(dān)心各種意想不到的故障。”因此,能夠先于客戶發(fā)現(xiàn)問題,并及時(shí)發(fā)現(xiàn)自身問題,確保以高質(zhì)量的 SDK 服務(wù)客戶,融云大規(guī)模即時(shí)通訊客戶端日志系統(tǒng)就顯得極為重要。

能否完整、及時(shí)地把系統(tǒng)中出現(xiàn)的問題反應(yīng)出來,并在成功率和可視化方面擁有出眾表現(xiàn),是大規(guī)模即時(shí)通訊客戶端日志系統(tǒng)設(shè)計(jì)的主要訴求。靈活控制日志上傳、保證移動(dòng)端日志統(tǒng)一、保證上傳成功率,以及標(biāo)簽日志黑名單功能,這些都是日志系統(tǒng)設(shè)計(jì)和升級(jí)要點(diǎn)。

例如,要做到靈活控制日志上傳,應(yīng)根據(jù)每家客戶應(yīng)用下發(fā)日志配置,滿足不同的平臺(tái)和版本,要設(shè)置好上傳時(shí)間間隔和失敗重試次數(shù),確保日志上傳的成功率和及時(shí)性。同時(shí),還要做到靈活控制被動(dòng)上傳和主動(dòng)上傳,以便有針對(duì)性地排查問題:被動(dòng)上傳含日志開關(guān)與上傳級(jí)別,方便關(guān)閉與控制;主動(dòng)上傳則可拉取指定用戶特定時(shí)間段內(nèi)的所有日志。

在設(shè)計(jì)中,保證移動(dòng)端日志統(tǒng)一,則能有效保證日志的可視性和完整性。此外,合理利用日志標(biāo)簽黑名單功能,使黑名單內(nèi)的日志不再入庫(kù)上傳,在實(shí)踐中可極大減少日志量,從而減輕服務(wù)器的成本壓力。

直播社交依靠融云高質(zhì)量通信架構(gòu)的設(shè)計(jì)

作為X-Meetup技術(shù)沙龍活動(dòng)的“X”嘉賓,虎克CEO過巍分享了公司的發(fā)展歷程及直播行業(yè)對(duì)PaaS通信云能力的需求?;⒖俗?012年開始進(jìn)入商業(yè)直播領(lǐng)域,其形式主要是會(huì)議直播,這與現(xiàn)在經(jīng)常看到的娛樂直播和秀場(chǎng)直播都不同,差異在于視頻格式、物理環(huán)境不同,線上會(huì)議直播與線下內(nèi)容的交互更強(qiáng)關(guān)聯(lián),因此對(duì)實(shí)時(shí)性的要求也比較高。隨后,虎克進(jìn)入了秀場(chǎng)直播領(lǐng)域,比如線上抓娃娃,直播社交等多種應(yīng)用場(chǎng)景。

在公司發(fā)展過程中,虎克看到了越來越多有商業(yè)價(jià)值的應(yīng)用場(chǎng)景都需要底層通信技術(shù)賦能,而想要擁有穩(wěn)定可靠的通信云能力,不是一家初創(chuàng)公司花半年甚至一年時(shí)間,找十幾個(gè)、二十幾個(gè)工程師能夠做得出來的。

為了快速發(fā)展,虎克最終選擇與融云牽手合作。合作后,虎克負(fù)責(zé)應(yīng)用場(chǎng)景和商業(yè)價(jià)值的實(shí)現(xiàn),而所有與底層通信云相關(guān)的技術(shù)與服務(wù)都交給融云。目前,虎克已推出60多款應(yīng)用產(chǎn)品,覆蓋超過90%的典型場(chǎng)景,單一應(yīng)用產(chǎn)品用戶量已經(jīng)突破百萬。最為難得的是,所有應(yīng)用產(chǎn)品用戶體驗(yàn)是零投訴,這完全依賴于融云穩(wěn)定、可靠的高質(zhì)量高并發(fā)的實(shí)時(shí)通訊架構(gòu)。

此外,直播社交領(lǐng)域的殼殼互聯(lián)軟件工程師張熙文也分享了《直播社交系統(tǒng)架構(gòu)升級(jí)》的最佳實(shí)踐,認(rèn)為用戶感知和視覺體驗(yàn)應(yīng)成為架構(gòu)升級(jí)過程中,重點(diǎn)被解決的問題,并以視覺體驗(yàn)中的主題皮膚設(shè)計(jì)為例,詳細(xì)向開發(fā)者介紹了該設(shè)計(jì)的框架技術(shù)圖。

結(jié)語(yǔ)

娛樂社交、電商直播等應(yīng)用場(chǎng)景,都需要音視頻和IM核心功能來支撐,而行業(yè)紅利的爆發(fā),用戶規(guī)模的指數(shù)級(jí)增長(zhǎng),又需要不斷升級(jí)迭代的架構(gòu)來保障用戶體驗(yàn)。因此,掌握高質(zhì)量高并發(fā)的實(shí)時(shí)通信的架構(gòu)設(shè)計(jì)越來越成為開發(fā)者的必備技能。融云X-Meetup南京站技術(shù)沙龍,為開發(fā)者提供了交流的平臺(tái)與機(jī)會(huì),期待2021年下一站再相遇。

(免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請(qǐng)進(jìn)一步核實(shí),并對(duì)任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對(duì)有關(guān)資料所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任。
任何單位或個(gè)人認(rèn)為本網(wǎng)站中的網(wǎng)頁(yè)或鏈接內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),應(yīng)及時(shí)向本網(wǎng)站提出書面權(quán)利通知或不實(shí)情況說明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明。本網(wǎng)站在收到上述法律文件后,將會(huì)依法盡快聯(lián)系相關(guān)文章源頭核實(shí),溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。 )