在 Oracle Cloud 上部署低延遲監看派對視訊串流平台
近年來,現場直播觀賞派對的需求蓬勃發展,為串流平台 (例如 Red5 Pro) 打造不斷成長的市場。
儘管串流服務供應商競爭激烈,但並非所有平台都能提供相同競爭。事實上,許多串流處理服務都具備 30-120s 或以上的延遲。此類延誤可能破壞了看待派對,因為有些成員會經歷家庭跑步、垃圾箱或敲門的刺激,而其他成員則在看到行動本身之前,會先經過他們的共同觀察者數秒的起司。但 Red5 Pro 已根據 Web 即時通訊 (WebRTC) 開發媒體伺服器系統,提供延遲低於 500 毫秒的即時串流視訊,或大約 。5 秒,讓觀察方中的每個人都能同時查看該動作。
Red5 Pro 在 Oracle Cloud Infrastructure (OCI) 上執行其平台,並支援 KeepBoxingFree.com 上的監看對象。每個 Red5 Pro 部署支援 50,000 個使用者、6,250 個監看方,以及 8 個使用者 (每個監看方)。Red5 Pro 可小幅度遞增:單一節點 (可縮放規模的最小節點) 可增加 300-1000 位使用者的容量。以小增量方式擴展可讓 Red5 Pro 依需求調整,而無須閒置執行處理。視關注的人員數量及其監看時間而定,預估傳出流量將產生:
- 最高可達 50,000 位使用者的 4.5 Mbps 位元
- 即使是尖峰容量,延遲低於 500 毫秒
Red5 Pro 選擇在 Oracle Cloud Infrastructure 上執行平台,以便利用:
- 在增量期間使用 AMD E4 彈性運算資源配置,可快速橫向擴展
- 降低資料傳輸成本
輸入資料傳輸完全免費。針對輸出資料傳輸,每月前 10 TB 免費。
- 啟動 Red5 Pro 節點 (執行處理) 時的一致時間
隨著其他超高分子,啟動時間先前花了八到十小時。透過 OCI,啟動時間縮短至兩小時。這讓 Red5 Pro 在快速需要數百個節點 / 執行處理時,能夠擴充容量。
架構
Red5 Pro 觀賞派對可由一般大眾、名人以及負責為活動提供即時視訊饋送的廣播人員存取。
此架構是由 Oracle Cloud Infrastructure (OCI) 不同區域的 Red5 Pro 伺服器叢集所組成,這些區域由串流管理程式所管理。這些串流管理程式是 Red5 Pro 生態系統中的主要進入點,負責指派合適的伺服器執行處理以發布或訂閱串流。串流管理程式也負載平衡,負責監督及管理節點生命週期。
使用者可以存取監看方 Web 伺服器來註冊帳戶。使用者帳戶資訊和事件詳細資訊儲存在代管會議資料庫的完全受管理 Oracle MySQL Database Service 叢集中。帳戶持有人便可註冊活動,並邀請朋友加入觀看派對。認證之後,使用者流量會通過一組負載平衡器,然後監看使用 OCI 自動調整功能調整功能來處理使用者流量中任何超出範圍的對象 Web 伺服器。
架構中的所有虛擬實例在 AMD E4 Flex 虛擬機器 (VM) 上執行。在事件發生當天,廣播者將其事件饋送傳送到轉碼器,該轉碼器會將饋送轉換為不同的變體 (各種解析的「調適型位元速率」串流),或直接傳送至來源伺服器 (如果不需要轉碼)。Red5 Pro 支援兩種類型的串流:即時串流,由廣播者產生,而 Web 串流則由關注者透過其網路攝影機參與視訊聊天的訂閱者所產生。
串流管理員會將廣播者流量直接導向至來源伺服器,並將訂閱者流量傳送至邊緣伺服器。串流管理程式也可作為訊號伺服器,以在 WebRTC 連線的對等之間代理 Web 插槽。串流資訊是由串流管理程式所維護,然後儲存在代表會議資料庫的 Oracle MySQL Database Service 叢集。為了確保低延遲,Red5 Pro 沒有任何原始伺服器和邊緣伺服器的負載平衡器,請將發佈者與訂閱者之間的躍點降到最低。網路安全群組 (NSG) 可控制資源之間的網路流量。
下圖說明 Web 群體和廣播連線程序。
Web 介面的高可用性是由可用性網域中跨三個容錯域的負載平衡伺服器所維護。Oracle MySQL Database Service 資料庫都位於高可用性叢集。寫入主要資料庫的資料也會複製到待命資料庫。串流管理程式會自動調整來源伺服器和邊緣伺服器,以支援負載中的變更。串流管理程式使用 terraform 程式碼動態佈建和取消佈建節點以進行自動調整。根據來源和邊緣節點的連線數目,透過 Red5 Pro 原則設定與觸發調整規模。例如,依預設會為每個元件觸發 60% 警示。如果為邊緣伺服器設定了 400 個連線的原則,當有 241 個連線時,會部署新的邊緣伺服器來容納額外的使用者。您可以視需要將原則設定為預先暫存伺服器,而不是調整規模。Oracle Cloud Infrastructure 網域名稱服務可用來管理支援事件的 DNS 區域。OCI Email Delivery 服務用於將電子郵件從 Red5 Pro 系統傳送至註冊的使用者。
下圖說明此參照架構。
red5-oci-architecture-oracle.zip
Red5 Pro 對未來狀態架構的願景包括:
- 在全球多個 OCI 區域中部署 Red5 Pro 平台
- 建立多用戶架構以支援每一伺服器的許多廣播通道
- 整合 Oracle 人工智慧語音和語言服務以進行文字轉錄和語言翻譯,為廣播公司和使用者提供多語言選項
架構具有下列元件:
- 租用戶
租用戶是指註冊 Oracle Cloud Infrastructure 時,Oracle 在 Oracle Cloud 內設定的安全獨立分割區。您可以在租用戶的 Oracle Cloud 中建立、組織及管理您的資源。租用戶與公司或組織同義。通常,公司會有單一租用戶,並反映其在該租用戶內的組織結構。單一租用戶通常與單一訂閱關聯,而單一訂閱通常只有一個租用戶。
- 區域
Oracle Cloud Infrastructure 區域是一個本地化的地理區域,包含一或多個資料中心 (稱為可用性網域)。區域與其他區域無關,因此廣大的距離可加以區隔 (跨國家或甚至洲)。
- 區間
區間是 Oracle Cloud Infrastructure 租用戶內的跨區域邏輯分割區。使用區間組織您在 Oracle Cloud 中的資源、控制對資源的存取,以及設定使用配額。若要控制對指定區間中資源的存取,您可以定義原則來指定可存取資源的人員及可執行的動作。
- 可用性網域
可用性網域是區域內的獨立資料中心。每個可用性網域中的實體資源會與其他可用性網域中的資源隔離,以提供容錯能力。可用性網域並不共用基礎設施,例如電力或冷卻系統或內部可用性網域網路。因此,一個可用性網域發生失敗並不會影響區域中的其他可用性網域。
- 堡壘主機服務
Oracle Cloud Infrastructure 堡壘主機可針對不具備公用端點且需要嚴格資源存取控制 (例如裸機和虛擬機器、Oracle MySQL Database Service 、Autonomous Transaction Processing (ATP)、Oracle Container Engine for Kubernetes (OKE) 及任何其他允許安全 Shell 協定 (SSH) 存取的資源,提供限制且限時的安全存取。有了 Oracle Cloud Infrastructure 堡壘主機服務,您不需部署和維護跳躍主機,即可啟用對專用主機的存取。此外,您還可以利用身分識別權限以及集中式、稽核及時間導向 SSH 階段作業來改善安全狀態。Oracle Cloud Infrastructure 堡壘主機不再需要公用 IP 才能存取堡壘主機,可在提供遠端存取時免除麻煩和潛在攻擊面。
- DNS
Oracle Cloud Infrastructure 網域名稱系統 (DNS) 服務是高度擴展性的全域任一傳播網域名稱系統 (DNS) 網路,提供增強的 DNS 效能、抗逆力及擴展性,讓一般使用者無論身在何處,都能快速連線至客戶的應用系統。
- 原則
Oracle Cloud Infrastructure Identity and Access Management 原則可指定誰可以存取哪些資源,以及存取方式。您會在群組和區間層次授予存取權,這表示您可以撰寫一個原則,讓群組在特定區間或租用戶內具有特定類型的存取權。
- 電子郵件傳遞
Oracle Cloud Infrastructure 電子郵件傳遞是一項具有高度擴展性、符合成本效益且可靠的電子郵件傳遞服務,可傳送大量應用系統產生的電子郵件,以進行關鍵任務行銷、通知及交易通訊,例如回條、詐騙偵測警示、多重要素身分識別驗證及密碼重設。
- Terraform
Oracle Cloud Infrastructure Resource Manager 可讓您將佈建 Terraform 資源的處理作業自動化。它可協助您使用基礎架構即程式碼模型來安裝、設定及管理資源。
- 虛擬雲端網路 (VCN) 和子網路
VCN 是您在 Oracle Cloud Infrastructure 區域中設定的可自訂軟體定義網路。就像傳統的資料中心網路,VCN 可讓您完全控制網路環境。VCN 可以有多個非重疊 CIDR 區塊,而您可以在建立 VCN 之後進行變更。您可以將 VCN 區隔成子網路,然後對區域或可用性網域進行調整。每個子網路都是由不與 VCN 中其他子網路重疊的連續位址範圍所組成。您可以在建立子網路後變更其大小。子網路可以是公用網路或專用子網路。
- 安全清單
您可以為每個子網路建立安全規則,以指定必須允許進出子網路的來源、目的地和流量類型。
- 路由表
虛擬路由表包含規則,可將流量從子網路遞送至 VCN 外部的目的地,通常透過閘道。
- 網際網路閘道
網際網路閘道可允許 VCN 中的公用子網路與公用網際網路之間的流量。
- 服務閘道
服務閘道可讓您從 VCN 存取其他服務,例如 Oracle Cloud Infrastructure Object Storage 。VCN 到 Oracle 服務的流量會透過 Oracle 網路光纖通道,而一律不會周遊網際網路。
- 網路安全群組 (NSG)
網路安全群組 (NSG) 會成為您雲端資源的虛擬防火牆。有了 Oracle Cloud Infrastructure 的零信任安全模型,系統便會拒絕所有流量,而您可以控制 VCN 內的網路流量。NSG 由一組傳入和傳出安全規則組成,僅適用於單一 VCN 中一組指定的 VNIC。
- 負載平衡程式
Oracle Cloud Infrastructure Load Balancing 服務提供從單一進入點到後端多部伺服器的自動化流量分配。
- 計算
Oracle Cloud Infrastructure Compute 服務可讓您在雲端中佈建與管理運算主機。您可以使用資源配置來啟動運算執行處理,以滿足 CPU、記憶體、網路頻寬及儲存的資源需求。建立運算執行處理之後,您可以安全地存取、重新啟動、連附和卸離磁碟區,以及在不再需要時將它終止。
- Oracle MySQL Database Service
Oracle MySQL Database Service 是一個完全託管的 Oracle Cloud Infrastructure (OCI) 資料庫服務,可讓開發人員快速開發及部署安全的雲端原生應用程式。Oracle MySQL Database Service 是 OCI 和 MySQL 工程團隊所建構、管理和支援的 100% 建置、管理。
Oracle MySQL Database Service 擁有整合式高效能分析引擎 (HeatWave),可直接對作業 MySQL 資料庫執行複雜的即時分析。
內建與部署功能
想要展示您在 Oracle Cloud Infrastructure 上建置的內容嗎?謹慎與我們的雲端架構師全球社群分享您的經驗、最佳實務和參考架構嗎?讓我們幫助您開始。
- 下載樣板 (PPTX)
將圖示拖放至範例線框,以圖解自己的參考架構。
- 觀看架構教學課程
取得如何建立參照架構的逐步指示。
- 送出圖表
請寄電子郵件到您的圖表。我們的雲端架構師將複習圖表,並協助您討論架構。

