天天看點

直播平台軟體開發中關于直播技術的架構問題

一.簡單的音視訊直播架構

1、在直播平台軟體開發中這種架構相對比較簡單,可以利用已有的CDN,比如阿裡、騰訊、百度等,然後再自己搭建一個伺服器并完成服務層的搭建。這個時候,可以先向這一伺服器(我們可以叫做信令伺服器)發送共享音視訊指令,然後通過攝像頭采集相關的音視訊資料,編碼之後通過RTMP的協定将音視訊流推送到CDN 。

直播平台軟體開發中關于直播技術的架構問題

2、接收端向信令伺服器發送指令進而擷取所共享的音視訊流的名稱,再通過這個名稱從CDN中拉取音視訊流,經過解碼之後渲染在螢幕上。

二.實時互動的音視訊直播架構

1、在直播平台軟體開發中相比起上面的直播架構,這一種直播架構相對來說比較複雜。它們之間的主要差別就是:增加了自有網絡。用戶端通過UDP進行資料傳輸,這樣可以大大的減少由于網絡和CDN結構所導緻的音視訊延遲的問題。在共享音視訊的時候,都是通過UDP協定上傳到各自的網絡伺服器上,這時候如果有其他人要參與實時互動的話,參與者也會通過UDP連接配接到這個網絡,進而達到實時互動的效果。

2、其中,音視訊資料上傳到自有的網絡上之後,還需要通過專門的服務将資料流轉化成為RTMP流并推向CDN,這樣一來,大多數不參與實時互動的使用者就可以在CDN上直接擷取音視訊的資料了。這一架構的優點就是:既可以滿足實時互動的需求,又可以滿足大批使用者隻看不互動的需求。

直播平台軟體開發中關于直播技術的架構問題

三.解決高負載和并發問題

1、在直播平台軟體開發中為了能夠解決實時互動負載過大和高并發的問題,就需要增加資源管理伺服器進而實時監測各個服務的資源。在共享音視訊時,資料總管可以配置設定最佳的伺服器給使用者使用,而且伺服器的資源是可以根據需求來進行橫向擴容的。為了增加它的執行效率,服務端通常會使用C或C++語言進行編寫。

2、總體來看,在直播平台軟體開發中實時互動直播已經成為直播最主要的發展趨勢。在直播開發的過程中,不僅需要了解用戶端的采集、推拉流等方面的問題,還可以從直播技術的架構方面入手去詳細了解直播運作過程中的相關問題。在了解直播架構問題之後,關于直播其他方面的知識相對起來也就更加容易了解了。

本文轉載自網絡,感謝(愛吃五花肉嗎)的分享,轉載僅為分享幹貨知識,如有侵權歡迎聯系雲豹科技進行删除處理

繼續閱讀