System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及通信,尤其涉及一種視頻流的獲取方法、裝置、設備和存儲介質。
技術介紹
1、內容分發網絡(content?delivery?network,簡稱cdn)系統作為超大規模的分布式系統,已經成為互聯網基礎設施,其在網絡直播等應用場景中發揮著重要作用。內容分發網絡系統主要用于將視頻流分發給播放端,以便播放端進行播放。目前,為了提升用戶的觀感體驗,可以在內容分發網絡系統中增設預推服務器集群,在分發視頻流時,先將視頻流分發給預推服務器集群中的預推服務器,再由播放端從預推服務器中拉取視頻流并且進行播放。相較于播放端而言,預推服務器集群中的預推服務器可以利用其優越的性能和網絡環境,以較快速度下載并緩存到視頻流,這樣,預推服務器就起到了中間預緩存的作用,可以有效縮短播放端獲取視頻流的時間,而且,在面對大規模用戶訪問時,預推服務器集群還可以起到負載均衡的效果,避免發生因為用戶請求壓力過大造成的服務中斷問題,從而實現了利用預推服務器集群為用戶提供低延時的穩定服務的目的。
2、但是,隨著預推服務器集群的不斷運行,預推服務器集群中的各個預推服務器的性能會出現差異,而播放端無法得知每個預推服務器的性能狀態,如果播放端從性能較差的預推服務器拉取視頻流,將會導致視頻流的拉取速度較慢,甚至會出現播放卡頓的問題。
技術實現思路
1、本申請提供了一種視頻流的獲取方法、裝置、設備和存儲介質,以解決如果播放端從性能較差的預推服務器拉取視頻流,將會導致視頻流的拉取速度較慢的問題。
2、針對上
3、本申請實施例提供了一種視頻流的獲取方法,每個預推服務器執行的步驟,包括:在所述預推服務器緩存內容分發服務器發送的視頻流的過程中,接收播放端針對所述視頻流發出的鑒權請求;在基于所述鑒權請求確定鑒權通過之后,根據所述預推服務器的通信緩存數據,確定所述預推服務器對應的性能指標數據;根據所述預推服務器對應的性能指標數據以及所述預推服務器對應的歷史性能健康度,確定所述預推服務器對應的當前性能健康度;將所述預推服務器對應的當前性能健康度發送給所述播放端,以便所述播放端根據多個所述預推服務器分別對應的當前性能健康度選擇從其中一個預推服務器獲取視頻流。
4、其中,所述根據預推服務器的通信緩存數據,確定所述預推服務器對應的性能指標數據,包括:在所述預推服務器從內容分發服務器接收視頻流的過程中,確定相鄰兩幀視頻圖像之間的幀間隔和接收間隔;其中,所述預推服務器將接收到的視頻圖像緩存到預設的緩存空間中;確定所述緩存空間中已緩存的視頻流對應的緩存總時長;根據所述幀間隔、所述接收間隔和所述緩存總時長,確定所述預推服務器對應的下行性能指標值。
5、其中,所述根據預推服務器的通信緩存數據,確定所述預推服務器對應的性能指標數據,包括:確定所述預推服務器與內容分發服務器之間的當前會話連接數量以及歷史會話連接數量;根據所述當前會話連接數量和所述歷史會話連接數量,確定所述預推服務器對應的上行性能指標值。
6、其中,所述根據預推服務器的通信緩存數據,確定所述預推服務器對應的性能指標數據,包括:獲取所述預推服務器與播放端之間的可用網絡連接數量和最大網絡連接數量;根據所述預推服務器與播放端之間的當前網絡連接數量以及所述可用網絡連接數量,確定所述預推服務器與播放端之間的剩余網絡連接數量;根據所述剩余網絡連接數量和所述最大網絡連接數量,確定所述預推服務器對應的負載性能指標值。
7、其中,所述確定所述預推服務器與播放端之間的可用網絡連接數量和最大網絡連接數量之前,還包括:在時間連續的每個預設統計時間段內,查詢所述統計時間段內的各個預設統計時間對應的網絡連接數量;根據所述統計時間段內的各個所述統計時間對應的網絡連接數量,確定所述統計時間段內的網絡連接數量最大值并且確定所述統計時間段內的平均網絡連接數量;將所述網絡連接數量最大值確定為下一個所述統計時間段內使用的所述最大網絡連接數量,并且,將所述平均網絡連接數量確定為下一個所述統計時間段內使用的所述可用網絡連接數量。
8、其中,所述性能指標數據,包括:至少一個性能指標值;所述根據所述預推服務器對應的性能指標數據以及所述預推服務器對應的歷史性能健康度,確定所述預推服務器對應的當前性能健康度,包括:獲取每個所述性能指標值對應的權重值并且獲取所述預推服務器對應的α平滑系數;利用每個所述性能指標值對應的權重值,確定各個所述性能指標值的加權平均值;利用所述預推服務器對應的α平滑系數,對所述加權平均值和所述歷史性能健康度進行α平滑濾波處理,得到所述預推服務器對應的當前性能健康度。
9、本申請實施例還提供了一種視頻流的獲取方法,播放端執行的步驟,包括:向多個預設預推服務器分別發送視頻流對應的鑒權請求;針對每個所述預推服務器,在確定所述預推服務器基于所述鑒權請求確定鑒權通過之后,獲取所述預推服務器返回的當前性能健康度;根據多個所述預推服務器分別對應的當前性能健康度的大小,從其中一個所述預推服務器獲取所述視頻流。
10、其中,所述根據多個所述預推服務器分別對應的當前性能健康度的大小,從其中一個所述預推服務器獲取所述視頻流,包括:在從當前所述預推服務器獲取所述視頻流的過程中,保活與其他所述預推服務器分別建立的網絡連接;如果檢測到所述視頻流獲取異常,則根據其他所述預推服務器分別對應的當前性能健康度的大小,選擇下一個所述預推服務器并且從下一個所述預推服務器繼續獲取所述視頻流。
11、本申請實施例還提供了一種視頻流的獲取裝置,所述視頻流的獲取裝置設置在預推服務器,包括:第一接收模塊,用于在緩存內容分發服務器發送的視頻流的過程中,接收播放端針對所述視頻流發出的鑒權請求;第一確定模塊,用于在基于所述鑒權請求確定鑒權通過之后,根據預推服務器的通信緩存數據,確定所述預推服務器對應的性能指標數據;第二確定模塊,用于將所述預推服務器對應的當前性能健康度發送給請求播放所述視頻流的播放端,以便所述播放端根據所述預推服務器對應的當前性能健康度執行視頻流獲取任務;第一發送模塊,用于將所述預推服務器對應的當前性能健康度上報給調度服務中心;所述視頻流的獲取裝置設置在播放端,包括:第二發送模塊,用于向多個預設預推服務器分別發送視頻流對應的鑒權請求;第二接收模塊,用于針對每個所述預推服務器,在確定所述預推服務器基于所述鑒權請求確定鑒權通過之后,獲取所述預推服務器返回的當前性能健康度;視頻獲取模塊,用于根據多個所述預推服務器分別對應的當前性能健康度的大小,從其中一個所述預推服務器獲取所述視頻流。
12、本申請實施例還提供了一種視頻流的獲取設備,包括:至少一個通信接口;與所述至少一個通信接口相連接的至少一個總線;與所述至少一個總線相連接的至少一個處理器;與所述至少一個總線相連接的至少一個存儲器,其中,所述處理器被配置為:執行所述存儲器中存儲的預推服務器的連接程序,以實現上述任一項在預推服務器執行的所述視頻流的獲取方法,或本文檔來自技高網...
【技術保護點】
1.一種視頻流的獲取方法,其特征在于,每個預推服務器執行的步驟,包括:
2.根據權利要求1所述的方法,其特征在于,所述根據預推服務器的通信緩存數據,確定所述預推服務器對應的性能指標數據,包括:
3.根據權利要求1所述的方法,其特征在于,所述根據預推服務器的通信緩存數據,確定所述預推服務器對應的性能指標數據,包括:
4.根據權利要求1所述的方法,其特征在于,所述根據預推服務器的通信緩存數據,確定所述預推服務器對應的性能指標數據,包括:
5.根據權利要求4所述的方法,其特征在于,所述確定所述預推服務器與播放端之間的可用網絡連接數量和最大網絡連接數量之前,還包括:
6.根據權利要求1所述的方法,其特征在于,
7.一種視頻流的獲取方法,其特征在于,播放端執行的步驟,包括:
8.根據權利要求7所述的方法,其特征在于,所述根據多個所述預推服務器分別對應的當前性能健康度的大小,從其中一個所述預推服務器獲取所述視頻流,包括:
9.一種視頻流的獲取裝置,其特征在于,
10.一種視頻流的獲取設
11.一種計算機可讀存儲介質,其特征在于,所述計算機可讀存儲介質存儲有計算機可執行指令,所述計算機可執行指令被執行,以實現權利要求1-6中任一項在預推服務器執行的所述視頻流的獲取方法,或者,實現權利要求7-8中任一項在播放端執行的所述視頻流的獲取方法。
...【技術特征摘要】
1.一種視頻流的獲取方法,其特征在于,每個預推服務器執行的步驟,包括:
2.根據權利要求1所述的方法,其特征在于,所述根據預推服務器的通信緩存數據,確定所述預推服務器對應的性能指標數據,包括:
3.根據權利要求1所述的方法,其特征在于,所述根據預推服務器的通信緩存數據,確定所述預推服務器對應的性能指標數據,包括:
4.根據權利要求1所述的方法,其特征在于,所述根據預推服務器的通信緩存數據,確定所述預推服務器對應的性能指標數據,包括:
5.根據權利要求4所述的方法,其特征在于,所述確定所述預推服務器與播放端之間的可用網絡連接數量和最大網絡連接數量之前,還包括:
6.根據權利要求1所述的方法,其特征在于,
7.一種視頻流的獲取方法,其特征在于,播放端執行的步驟,包括:
8.根據權利要求7所述的方法,其特征在于,所述根據多個所述預推...
【專利技術屬性】
技術研發人員:洪潤琦,周志偉,
申請(專利權)人:北京奇藝世紀科技有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。