視訊聊天交友聊天室 - 真人美女辣妹鋼管脫衣秀》 《meme104美女視訊》 《免費一對多金瓶梅視訊》 《173免費視訊live觀看-173免費視訊》 《色情視訊清涼內衣秀 - 聊天室大廳》 《視訊聊天網交友 - 美女聊天直播 - 視訊愛情交友網




...


語音聊天室這個名詞可能有點陌生,實際上相關的產品還是很多的,例如遊戲里的開黑語音、在線課堂等。語音聊天室可以認為視頻直播的前身,很多音視頻平台的架構是從語音聊天室演進為視頻直播室的。本文主要介紹語音聊天室的架構設計,後面的文章會逐步介紹從語音到視頻的演進歷程。

語音聊天室怎麼實現呢?網際網路產品設計萬變不離其宗,一套QQ的架構設計可以走遍天下。QQ群聊是怎麼實現的,那麼把群聊中的文字消息換成語音數據就是語音聊天室了。



...


如圖所示,ABC進入房間101,伺服器會維護一個房間信息表記錄每個房間的用戶信息。當某個用戶說話的時候,客戶端將採集到的語音數據發給伺服器,伺服器就把語音數據發給101的每一個用戶。客戶端收到語音數據就可以播放出來。

但是實際生產中肯定不會使用這麼簡單的架構,為什麼呢?首先一個伺服器實現所有功能是不可行的,因為一方面伺服器的性能不可能滿足,另一方面大型軟體的複雜度和維護成本是非常高的,因此軟體工程一直都強調高內聚低耦合,把功能拆解可以使系統更容易維護。

拆解有兩個方向,一個是按功能拆分,即把不同功能放到不同伺服器完成;另一種是平行擴展,即相同功能的服務分布到多台機器上。

首先按功能拆分。按功能拆分又稱為垂直拆分,與平行擴展是一個相對的概念。比較常見的拆分方法是分層,一般分接入層、邏輯層和數據層。接入層是整個系統對外的窗口,除了基本的數據加解密和透傳功能外,還起到保護內部伺服器的作用;邏輯層包含實際的業務伺服器;數據層主要是存儲數據的存儲介質和相關伺服器。

接著是平行擴展。為什麼需要平行擴展?一方面單機性能有限,即使增加機器配置,性能也是有上限的,因此分布式才是根本解決的方案;另一方面平行擴展可以實現服務高可用,即使部分機器宕機,服務仍然可用。

簡單地說,平行擴展就是增加備機。而備機有冷熱之分:熱備是指多台機器同時對外提供服務,當其中一台機器故障,其他機器可以正常提供服務;冷備指同時只有一台機器(主機)對外提供服務,其他機器(備機)不提供服務,當主機發生故障時,備機需要切換成主機提供服務。

還有一個概念,有狀態服務和無狀態服務。網上有很多解釋,大多都比較專業,不再贅述。我只說一下自己的理解,有狀態服務是指本地存儲需要持久化數據的服務,例如資料庫服務;無狀態服務是指本地不存儲持久化數據的服務,例如WEB伺服器。

有狀態和無狀態一般是跟冷備和熱備對應起來的:有狀態服務使用冷備,無狀態服務使用熱備。這是由它們的特點決定的,有狀態服務因為存儲數據,一般不支持多點寫入,因為數據在伺服器之間同步是非常複雜的(CAP理論和Paxos算法了解一下),所以冷備是最簡單的容災策略;無狀態服務不存儲數據,用戶的請求發到哪一台機器都返回一樣的結果,因此所有機器可以同時提供服務。

經過垂直拆分和平行擴展,語音聊天室的架構可以分解成下面的形式:



...


圖中接入層包括目錄伺服器和語音伺服器,邏輯層包括房間伺服器,存儲層包括資料庫。其中接入層和邏輯層服務都是無狀態服務,至少有兩台機器熱備,資料庫一般是主從冷備。

目錄伺服器是用戶訪問系統的地圖,用戶通過它可以找到要連接的伺服器的IP和埠。語音伺服器是處理語音數據上傳和轉發的服務。房間伺服器維護房間-語音伺服器-用戶的映射關係。映射關係類似下圖,一個房間的用戶可能分布在多個語音伺服器,另外還有沒有畫出來的關係:一個語音伺服器上可以有多個房間的用戶。



...業務流程如圖所示:用戶A點擊進入101聊天室,首先請求目錄伺服器獲得101房間所在語音伺服器的IP列表;然後,A連接某台語音伺服器請求進入101房間。如果進房成功,房間伺服器會把信息寫入DB,用戶A可以在房間開始語音聊天。



...這已經是一個比較完備的系統了。

總結一下,本篇主要介紹了一個簡單的語音聊天室的設計方案和一些基礎概念。方案設計可以沿著先簡單再完備的思路進行推演。例如最開始的一台伺服器扛不住,就要平行擴展,一個房間的用戶分布到多台伺服器,然後就要有一個更高層次的伺服器(房間伺服器)提供全局視野,如此類推。

限於篇幅,上述系統還有很多細節沒有討論。例如語音伺服器是怎麼轉發語音數據的?目錄伺服器是否有點多餘?等等。我們在接下來的文章中將一一解答,敬請期待。

美女裸聊視頻 - 網聊視訊聊天室 - 直播美女視頻網 | 色情視訊王國 - 線上視訊交友 | LIVE173愛秀啦 - 影音視訊live秀 | 視訊美女自拍短片 - 真人免費成人視頻 | 免費正妹視訊聊天直播 - 線上正妹視訊聊天 | 視頻唱歌聊天室 - 美女視頻不夜城聊天 | 173視訊交友 - 台灣視訊173聊天室 | 金瓶梅視訊美女 - 台灣甜心視頻美女 | 免費視頻影音 - 聊天免費視訊 - 視訊專區 | 視頻表演裸聊 - 真人聊天網站 - 視頻聊天室交友 | 美女視訊裸聊直播間 - 金瓶梅視訊聊天室 - 美女視頻 | 金瓶梅聊天視訊 - 美眉全裸線上視訊自拍 | momo520辣妹視訊 | 視訊聊天側錄 - 真人美女視頻 | 金瓶梅視訊美女 - 女網紅主播在線視訊 | uthome正妹視訊 | live173正妹視訊直播 | 173免費視訊免費跟百位正妹聊天談心 | 173免費視訊live聊天 | 免費真人裸聊室 - 美女直播秀場 - 網絡視頻聊天 |

本站提供手機APP下載免費視訊。線上美女直播聊天,免費視訊線上馬上看。手機視訊。美女直播。服務: 視訊, 直播, 免費聊天。

Copyright © 2020 By 色情視訊清涼內衣秀 - 聊天室大廳 All Rights Reserved.