1. 客戶端-服務(wù)器工作流程
客戶端:在我們的架構(gòu)中,客戶端可以分為三種類型:iOS 和 Android 移動應(yīng)用程序以及 Web 聊天。移動應(yīng)用程序首先通過 API 網(wǎng)關(guān)服務(wù)與服務(wù)器進行通信,其中客戶端會生成一個訪問令牌,該令牌將授權(quán)每個通信和服務(wù)。
網(wǎng)絡(luò)聊天也以相同的方式進行通信,并且與 Web 管理應(yīng)用程序一起托管。由于Web客戶端的請求會產(chǎn)生流量,因此這里使用負載均衡器。
緩存服務(wù)器:?Redis 的身份服務(wù)是用于緩存訪問令牌并減少數(shù)據(jù)庫操作的服務(wù)器。
監(jiān)控服務(wù):我們還使用 Grafana 的監(jiān)控儀表板來詳細查看整個過程中發(fā)生的所有操作?,F(xiàn)在,讓我們看一下服務(wù)器的組件及其在架構(gòu)中的角色。
由于微服務(wù)更容易開發(fā)、部署和調(diào)試,因此核心微服務(wù)用于擴展聊天應(yīng)用程序。
使用的核心微服務(wù):
- 網(wǎng)關(guān)服務(wù)。
- 聯(lián)系服務(wù)。
- 用戶服務(wù)。
- 媒體服務(wù)。
- XMPP 服務(wù)。
- 通知服務(wù)。
- Rabbit MQ 服務(wù)。
2. 網(wǎng)關(guān)/認證服務(wù)
網(wǎng)關(guān),顧名思義,用于進入應(yīng)用程序。服務(wù)包含以下API:
- 登錄— 用于驗證用戶身份。
- 注銷— 用于從應(yīng)用程序中注銷用戶。
- 注冊— 用于在應(yīng)用程序中注冊用戶。
您對該架構(gòu)設(shè)置有何期望?
- 每天 1400 萬條消息。
- 每秒最多 200 條消息。
只需花費在這樣的架構(gòu)上就足夠了,這將為您帶來企業(yè)級架構(gòu)。
現(xiàn)在介紹一下呼叫服務(wù)系統(tǒng)的架構(gòu)。
我們來詳細列出每個組件的整體解釋。
- WebAPI:第三方開發(fā)人員用于開發(fā)基于 Web 的視頻聊天類應(yīng)用程序的 API。
-
傳輸/會話:會話組件是通過重用 libjingle 中的組件來構(gòu)建的,無需使用或要求 XMPP/jingle 協(xié)議。
-
RTP 堆棧:?RTP(實時協(xié)議)的網(wǎng)絡(luò)堆棧。
-
STUN/ICE:允許調(diào)用使用 STUN 和 ICE 機制跨各種類型的網(wǎng)絡(luò)建立連接的組件。
-
會話管理:抽象的會話層,允許呼叫建立和管理層。這將協(xié)議實施的決定留給了應(yīng)用程序開發(fā)人員。
-
VoiceEngine:?VoiceEngine是音頻媒體鏈的框架,從聲卡到網(wǎng)絡(luò)。
iSAC/iLBC/Opus
-
iSAC:用于 VoIP 和流音頻的寬帶和超寬帶音頻編解碼器。iSAC 使用 16 kHz 或 32 kHz 采樣頻率,具有 12 至 52 kbps 的自適應(yīng)可變比特率。
-
iLBC:用于 VoIP 和流音頻的窄帶語音編解碼器。使用 8 kHz 采樣頻率,20ms 幀的比特率為 15.2 kbps,30ms 幀的比特率為 13.33 kbps。由 IETF RFC 3951 和 3952 定義。
-
Opus:支持從 6 kbit/s 到 510 kbit/s 的恒定和可變比特率編碼,幀大小從 2.5 ms 到 60 ms,以及從 8 kHz(4 kHz 帶寬)到 48 kHz(20 kHz 帶寬)的各種采樣率,可以再現(xiàn)人類聽覺系統(tǒng)的整個聽覺范圍)。由 IETF RFC 6176 定義。NetEQ for Voice。
動態(tài)抖動緩沖區(qū)和錯誤隱藏算法,用于隱藏網(wǎng)絡(luò)抖動和數(shù)據(jù)包丟失的負面影響。保持盡可能低的延遲,同時保持最高的語音質(zhì)量。
聲學(xué)回聲消除器 (AEC)
聲學(xué)回聲消除器是一種基于軟件的信號處理組件,可實時消除進入有源麥克風(fēng)的語音所產(chǎn)生的聲學(xué)回聲。
降噪 (NR)
降噪組件是基于軟件的信號處理組件,可消除通常與 VoIP 相關(guān)的某些類型的背景噪聲。(嘶嘶聲、風(fēng)扇噪音等……)
視頻引擎
VideoEngine是視頻的框架視頻媒體鏈,從攝像頭到網(wǎng)絡(luò),從網(wǎng)絡(luò)到屏幕。
VP8
來自 WebM 項目的視頻編解碼器。非常適合 RTC,因為它專為低延遲而設(shè)計。
視頻抖動緩沖器
視頻的動態(tài)抖動緩沖器。它有助于隱藏抖動和數(shù)據(jù)包丟失對整體視頻質(zhì)量的影響。
圖像增強
例如,它可以消除網(wǎng)絡(luò)攝像頭捕獲的圖像中的視頻噪聲。文章來源:http://www.zghlxwxcb.cn/news/detail-726639.html
把它們放在一起
我們在這里展示的是 Kubernetes、微服務(wù)系統(tǒng)的強大功能以及可以輕松擴展超過 1,000,000 個并發(fā)連接的企業(yè)聊天 API 解決方案的本質(zhì)。企業(yè)聊天架構(gòu)的核心優(yōu)勢是投資快速、可擴展且可靠。文章來源地址http://www.zghlxwxcb.cn/news/detail-726639.html
到了這里,關(guān)于企業(yè)聊天應(yīng)用程序使用 Kubernetes的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!