數(shù)據(jù)預(yù)取方法、裝置、設(shè)備以及存儲介質(zhì)與流程
1.本公開涉及直播技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)預(yù)取方法、裝置、設(shè)備以及存儲介質(zhì)。
背景技術(shù):
2.在流媒體相關(guān)的各種應(yīng)用中,直播在遠程教學(xué)、電子商務(wù)、電視直播等方面都有著廣泛的應(yīng)用。隨著流媒體形式的信息需求日益增加,傳統(tǒng)的client/server架構(gòu)已經(jīng)逐漸無法滿足。為了解決這個問題,對等網(wǎng)絡(luò)(peer to peer,)技術(shù)運用越來越廣泛。技術(shù)就是通過節(jié)點之間的直接交互來實現(xiàn)系統(tǒng)資源和信息的共享,一個節(jié)點既是下載端(客戶端)又是資源提供端(服務(wù)器端)。通過節(jié)點之間的交互可以更快地獲取資源,即節(jié)點越多速度越快。
3.現(xiàn)有直播系統(tǒng)一般播放延遲在1分鐘左右,這延遲的1分鐘時間里給節(jié)點提供了活動空間。為了防止“大家都在同一起跑線上”導(dǎo)致的無數(shù)據(jù)差,一般會采用預(yù)取的優(yōu)化手段人為的制造一些數(shù)據(jù)差,使之有交換數(shù)據(jù)的空間。但是現(xiàn)有直播系統(tǒng)中所有的節(jié)點都按照固定的預(yù)取值進行預(yù)取,則在帶來數(shù)據(jù)差的同時也會出現(xiàn)過度預(yù)取的問題。
技術(shù)實現(xiàn)要素:
4.本公開提供了一種數(shù)據(jù)預(yù)取方法、裝置、設(shè)備以及存儲介質(zhì),可以基于與本節(jié)點連接的節(jié)點的數(shù)量動態(tài)調(diào)整預(yù)取值,在達到數(shù)據(jù)差的同時盡可能地避免過度預(yù)取,從而進一步提高數(shù)據(jù)分享率。
5.第一方面,本公開實施例提供了一種數(shù)據(jù)預(yù)取方法,該方法應(yīng)用于直播系統(tǒng)中的節(jié)點,包括:
6.獲取直播系統(tǒng)中與本節(jié)點連接的節(jié)點的數(shù)量;
7.根據(jù)與本節(jié)點連接的節(jié)點的數(shù)量,計算動態(tài)預(yù)取值;
8.根據(jù)動態(tài)預(yù)取值,從直播系統(tǒng)中的內(nèi)容分發(fā)網(wǎng)絡(luò)(content delivery network,cdn)節(jié)點預(yù)取對應(yīng)數(shù)據(jù)量的數(shù)據(jù)。
9.在第一方面的一些可實現(xiàn)方式中,獲取直播系統(tǒng)中與本節(jié)點連接的節(jié)點的數(shù)量,包括:
10.根據(jù)本節(jié)點的節(jié)點連接記錄表,確定直播系統(tǒng)中與本節(jié)點連接的節(jié)點的數(shù)量。
11.在第一方面的一些可實現(xiàn)方式中,根據(jù)與本節(jié)點連接的節(jié)點的數(shù)量,計算動態(tài)預(yù)取值,包括:
12.計算數(shù)量的倒數(shù),并根據(jù)倒數(shù)確定動態(tài)預(yù)取值。
13.在第一方面的一些可實現(xiàn)方式中,根據(jù)倒數(shù)確定動態(tài)預(yù)取值,包括:
14.將倒數(shù)與預(yù)設(shè)的最大預(yù)取值和最小預(yù)取值比較;
15.若倒數(shù)大于或等于最小預(yù)取值且倒數(shù)小于或等于最大預(yù)取值,則將倒數(shù)作為動態(tài)
預(yù)取值;
16.若倒數(shù)小于最小預(yù)取值,則將最小預(yù)取值作為動態(tài)預(yù)取值;
17.若倒數(shù)大于最大預(yù)取值,則將最大預(yù)取值作為動態(tài)預(yù)取值。
18.在第一方面的一些可實現(xiàn)方式中,根據(jù)與本節(jié)點連接的節(jié)點的數(shù)量,計算動態(tài)預(yù)取值,包括:
19.根據(jù)本節(jié)點可用資源和數(shù)量,計算動態(tài)預(yù)取值。
20.在第一方面的一些可實現(xiàn)方式中,根據(jù)本節(jié)點可用資源和數(shù)量,計算動態(tài)預(yù)取值,包括:
21.根據(jù)本節(jié)點可用資源,計算資源權(quán)重;
22.將資源權(quán)重與數(shù)量的倒數(shù)的乘積作為動態(tài)預(yù)取值。
23.在第一方面的一些可實現(xiàn)方式中,根據(jù)動態(tài)預(yù)取值,從直播系統(tǒng)中的cdn節(jié)點預(yù)取對應(yīng)數(shù)據(jù)量的數(shù)據(jù),包括:
24.根據(jù)與本節(jié)點連接的各節(jié)點的預(yù)取數(shù)據(jù)記錄表,確定未被預(yù)取的數(shù)據(jù);
25.根據(jù)動態(tài)預(yù)取值從cdn節(jié)點預(yù)取對應(yīng)數(shù)據(jù)量的未被預(yù)取的數(shù)據(jù)。
26.第二方面,本公開實施例提供了一種數(shù)據(jù)預(yù)取裝置,該裝置應(yīng)用于直播系統(tǒng)中的節(jié)點,包括:
27.獲取模塊,用于獲取直播系統(tǒng)中與本節(jié)點連接的節(jié)點的數(shù)量;
28.計算模塊,用于根據(jù)與本節(jié)點連接的節(jié)點的數(shù)量,計算動態(tài)預(yù)取值;
29.預(yù)取模塊,用于根據(jù)動態(tài)預(yù)取值,從直播系統(tǒng)中的cdn節(jié)點預(yù)取對應(yīng)數(shù)據(jù)量的數(shù)據(jù)。
30.第三方面,本公開實施例提供了一種電子設(shè)備,該電子設(shè)備包括:至少一個處理器;以及與至少一個處理器通信連接的存儲器;存儲器存儲有可被至少一個處理器執(zhí)行的指令,指令被至少一個處理器執(zhí)行,以使至少一個處理器能夠執(zhí)行如以上所述的方法。
31.第四方面,本公開實施例提供了一種存儲有計算機指令的非瞬時計算機可讀存儲介質(zhì),計算機指令用于使計算機執(zhí)行如以上所述的方法。
32.在本公開中,節(jié)點可以獲取直播系統(tǒng)中與本節(jié)點連接的節(jié)點的數(shù)量,并根據(jù)該數(shù)量,計算動態(tài)預(yù)取值,進而根據(jù)動態(tài)預(yù)取值,從直播系統(tǒng)中的cdn節(jié)點預(yù)取對應(yīng)數(shù)據(jù)量的數(shù)據(jù)。
33.以此方式,可以基于與本節(jié)點連接的節(jié)點的數(shù)量動態(tài)調(diào)整預(yù)取值,在達到數(shù)據(jù)差的同時盡可能地避免過度預(yù)取,從而進一步提高數(shù)據(jù)分享率。
34.應(yīng)當(dāng)理解,發(fā)明內(nèi)容部分中所描述的內(nèi)容并非旨在限定本公開的實施例的關(guān)鍵或重要特征,亦非用于限制本公開的范圍。本公開的其它特征將通過以下的描述變得容易理解。
附圖說明
35.結(jié)合附圖并參考以下詳細(xì)說明,本公開各實施例的上述和其他特征、優(yōu)點及方面將變得更加明顯。附圖用于更好地理解本方案,不構(gòu)成對本公開的限定在附圖中,相同或相似的附圖標(biāo)記表示相同或相似的元素,其中:
36.圖1示出了一種能夠在其中實現(xiàn)本公開的實施例的示例性運行環(huán)境的示意圖;
37.圖2示出了本公開實施例提供的一種數(shù)據(jù)預(yù)取方法的流程圖;
38.圖3示出了本公開實施例提供的一種數(shù)據(jù)預(yù)取裝置的結(jié)構(gòu)圖;
39.圖4示出了一種能夠?qū)嵤┍竟_的實施例的示例性電子設(shè)備的結(jié)構(gòu)圖。
具體實施方式
40.為使本公開實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本公開實施例中的附圖,對本公開實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本公開一部分實施例,而不是全部的實施例。基于本公開中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的全部其他實施例,都屬于本公開保護的范圍。
41.另外,本文中術(shù)語“和/或”,僅僅是一種描述關(guān)聯(lián)對象的關(guān)聯(lián)關(guān)系,表示可以存在三種關(guān)系,例如,a和/或b,可以表示:單獨存在a,同時存在a和b,單獨存在b這三種情況。另外,本文中字符“/”,一般表示前后關(guān)聯(lián)對象是一種“或”的關(guān)系。
42.針對背景技術(shù)中出現(xiàn)的問題,本公開實施例提供了一種數(shù)據(jù)預(yù)取方法、裝置、設(shè)備以及存儲介質(zhì)。
43.具體地,節(jié)點可以獲取直播系統(tǒng)中與本節(jié)點連接的節(jié)點的數(shù)量,并根據(jù)與本節(jié)點連接的節(jié)點的數(shù)量,計算動態(tài)預(yù)取值,進而根據(jù)動態(tài)預(yù)取值,從直播系統(tǒng)中的cdn節(jié)點預(yù)取對應(yīng)數(shù)據(jù)量的數(shù)據(jù)。
44.以此方式,可以基于與本節(jié)點連接的節(jié)點的數(shù)量動態(tài)調(diào)整預(yù)取值,在達到數(shù)據(jù)差的同時盡可能地避免過度預(yù)取,從而進一步提高數(shù)據(jù)分享率。
45.下面結(jié)合附圖,通過具體的實施例對本公開實施例提供的數(shù)據(jù)預(yù)取方法、裝置、設(shè)備以及存儲介質(zhì)進行詳細(xì)地說明。
46.圖1示出了一種能夠在其中實現(xiàn)本公開的實施例的示例性運行環(huán)境的示意圖,如圖1所示,運行環(huán)境100中可以包括節(jié)點0-n。
47.其中,節(jié)點0-n是直播系統(tǒng)的一部分,其可以是移動電子設(shè)備,也可以是非移動電子設(shè)備。例如,移動電子設(shè)備可以是平板電腦、筆記本電腦、掌上電腦或者超級移動個人計算機(ultra-mobile personal computer,umpc)等,非移動電子設(shè)備可以是個人計算機(personal computer,pc)、超級計算機、智能電視、車載主機或者服務(wù)器等。
48.以節(jié)點0為例,節(jié)點0可以獲取直播系統(tǒng)中與本節(jié)點連接的節(jié)點的數(shù)量。如圖1所示,與節(jié)點0連接的節(jié)點為節(jié)點1-n,可知,與節(jié)點0連接的節(jié)點的數(shù)量為n。根據(jù)數(shù)量n計算動態(tài)預(yù)取值,并根據(jù)計算的動態(tài)預(yù)取值,從直播系統(tǒng)中的cdn節(jié)點預(yù)取對應(yīng)數(shù)據(jù)量的數(shù)據(jù)。
49.以此方式,可以基于與本節(jié)點連接的節(jié)點的數(shù)量動態(tài)調(diào)整預(yù)取值,在達到數(shù)據(jù)差的同時盡可能地避免過度預(yù)取,從而進一步提高數(shù)據(jù)分享率。
50.圖2示出了本公開實施例提供的一種數(shù)據(jù)預(yù)取方法的流程圖,如圖2所示,數(shù)據(jù)預(yù)取方法200可以應(yīng)用于直播系統(tǒng)中的節(jié)點,包括以下步驟:
51.s210,獲取直播系統(tǒng)中與本節(jié)點連接的節(jié)點的數(shù)量。
52.在一些實施例中,節(jié)點在與其他節(jié)點連接時,會在本節(jié)點的節(jié)點連接記錄表中存儲連接記錄,因此可以根據(jù)本節(jié)點的節(jié)點連接記錄表,快速確定直播系統(tǒng)中與本節(jié)點連接的節(jié)點的數(shù)量。
53.s220,根據(jù)與本節(jié)點連接的節(jié)點的數(shù)量,計算動態(tài)預(yù)取值。
54.在一些實施例中,可以計算與本節(jié)點連接的節(jié)點的數(shù)量的倒數(shù),并根據(jù)計算的倒數(shù)快速確定動態(tài)預(yù)取值。
55.示例性地,可以直接將倒數(shù)作為動態(tài)預(yù)取值,提高計算效率。
56.進一步地,也可以將倒數(shù)與預(yù)設(shè)的最大預(yù)取值和最小預(yù)取值比較,其中,最大預(yù)取值和最小預(yù)取值由直播系統(tǒng)的管理人員根據(jù)實際需要靈活設(shè)置;
57.若倒數(shù)大于或等于最小預(yù)取值且倒數(shù)小于或等于最大預(yù)取值,則將倒數(shù)作為動態(tài)預(yù)取值;
58.若倒數(shù)小于最小預(yù)取值,則將最小預(yù)取值作為動態(tài)預(yù)取值;
59.若倒數(shù)大于最大預(yù)取值,則將最大預(yù)取值作為動態(tài)預(yù)取值。
60.例如,與本節(jié)點連接的節(jié)點的數(shù)量為p,最大預(yù)取值為q,最小預(yù)取值為r,則本次計算的動態(tài)預(yù)取值n=clamp{1/p,q,r},其中,n=clamp{1/p,q,r}表示:
61.若r≤1/p≤q,則n=1/p;
62.若1/p≤r,則n=r;
63.若1/p≥q,則n=q。
64.如此一來,可以在預(yù)設(shè)范圍內(nèi)根據(jù)與本節(jié)點連接的節(jié)點的數(shù)量動態(tài)調(diào)整預(yù)取值,避免預(yù)取值調(diào)整出現(xiàn)極端情況。
65.在另一些實施例中,可以根據(jù)本節(jié)點可用資源(例如可用帶寬資源、可用處理器資源、可用運行內(nèi)存資源等)和獲取的與本節(jié)點連接的節(jié)點的數(shù)量,計算動態(tài)預(yù)取值。
66.示例性地,可以根據(jù)本節(jié)點可用資源,計算資源權(quán)重。例如,對本節(jié)點可用資源進行評分,將該評分與預(yù)設(shè)評分的比值作為資源權(quán)重。將資源權(quán)重與數(shù)量的倒數(shù)的乘積作為動態(tài)預(yù)取值。
67.如此一來,可以在計算動態(tài)預(yù)取值時引入本節(jié)點可用資源這一要素,充分利用節(jié)點的可用資源進行數(shù)據(jù)預(yù)取。
68.進一步地,也可以如倒數(shù)比較一樣,將乘積與預(yù)設(shè)的最大預(yù)取值和最小預(yù)取值比較,后續(xù)步驟與上述示例類似,在此不做贅述。
69.s230,根據(jù)動態(tài)預(yù)取值,從直播系統(tǒng)中的cdn節(jié)點預(yù)取對應(yīng)數(shù)據(jù)量的數(shù)據(jù)。
70.在一些實施例中,可以根據(jù)動態(tài)預(yù)取值生成數(shù)據(jù)預(yù)取請求,并向直播系統(tǒng)中的cdn節(jié)點發(fā)送數(shù)據(jù)預(yù)取請求,以便cdn節(jié)點響應(yīng)于數(shù)據(jù)預(yù)取請求,向本節(jié)點隨機或有序反饋對應(yīng)數(shù)據(jù)量的數(shù)據(jù)。
71.在另一些實施例中,可以根據(jù)與本節(jié)點連接的各節(jié)點的預(yù)取數(shù)據(jù)記錄表,確定未被預(yù)取的數(shù)據(jù)(即與本節(jié)點連接的節(jié)點還未預(yù)取的數(shù)據(jù)),然后根據(jù)動態(tài)預(yù)取值從cdn節(jié)點預(yù)取對應(yīng)數(shù)據(jù)量的未被預(yù)取的數(shù)據(jù)。也就是說,跳過當(dāng)前組網(wǎng)中的share-in-range中count為1或2的數(shù)據(jù),從而避免出現(xiàn)節(jié)點間預(yù)取重疊的問題,提高數(shù)據(jù)預(yù)取效率。
72.根據(jù)本公開實施例,節(jié)點可以基于與本節(jié)點連接的節(jié)點的數(shù)量動態(tài)調(diào)整預(yù)取值,并從直播系統(tǒng)中的cdn節(jié)點預(yù)取對應(yīng)數(shù)據(jù)量的數(shù)據(jù),能夠在達到數(shù)據(jù)差的同時盡可能地避免過度預(yù)取,從而進一步提高數(shù)據(jù)分享率。
73.下面結(jié)合一個具體實施例,對公開提供的數(shù)據(jù)預(yù)取方法進行詳細(xì)說明,具體如下:
74.(1)根據(jù)本節(jié)點的節(jié)點連接記錄表,確定直播系統(tǒng)中與本節(jié)點連接的節(jié)點
的數(shù)量。
75.(2)計算與本節(jié)點連接的節(jié)點的數(shù)量的倒數(shù),將倒數(shù)與預(yù)設(shè)的最大預(yù)取值和最小預(yù)取值比較;
76.若倒數(shù)大于或等于最小預(yù)取值且倒數(shù)小于或等于最大預(yù)取值,則將倒數(shù)作為動態(tài)預(yù)取值;
77.若倒數(shù)小于最小預(yù)取值,則將最小預(yù)取值作為動態(tài)預(yù)取值;
78.若倒數(shù)大于最大預(yù)取值,則將最大預(yù)取值作為動態(tài)預(yù)取值。
79.(3)根據(jù)與本節(jié)點連接的各節(jié)點的預(yù)取數(shù)據(jù)記錄表,確定未被預(yù)取的數(shù)據(jù),然后根據(jù)動態(tài)預(yù)取值從cdn節(jié)點預(yù)取對應(yīng)數(shù)據(jù)量的未被預(yù)取的數(shù)據(jù)。
80.需要說明的是,對于前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本公開并不受所描述的動作順序的限制,因為依據(jù)本公開,某些步驟可以采用其他順序或者同時進行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實施例均屬于可選實施例,所涉及的動作和模塊并不一定是本公開所必須的。
81.以上是關(guān)于方法實施例的介紹,以下通過裝置實施例,對本公開所述方案進行進一步說明。
82.圖3示出了根據(jù)本公開的實施例提供的一種數(shù)據(jù)預(yù)取裝置的結(jié)構(gòu)圖,如圖3所示,數(shù)據(jù)預(yù)取裝置300可以應(yīng)用于直播系統(tǒng)中的節(jié)點,包括:
83.獲取模塊310,用于獲取直播系統(tǒng)中與本節(jié)點連接的節(jié)點的數(shù)量;
84.計算模塊320,用于根據(jù)與本節(jié)點連接的節(jié)點的數(shù)量,計算動態(tài)預(yù)取值;
85.預(yù)取模塊330,用于根據(jù)動態(tài)預(yù)取值,從直播系統(tǒng)中的cdn節(jié)點預(yù)取對應(yīng)數(shù)據(jù)量的數(shù)據(jù)。
86.在一些實施例中,獲取模塊310具體用于:
87.根據(jù)本節(jié)點的節(jié)點連接記錄表,確定直播系統(tǒng)中與本節(jié)點連接的節(jié)點的數(shù)量。
88.在一些實施例中,計算模塊320具體用于:
89.計算數(shù)量的倒數(shù),并根據(jù)倒數(shù)確定動態(tài)預(yù)取值。
90.在一些實施例中,計算模塊320具體用于:
91.將倒數(shù)與預(yù)設(shè)的最大預(yù)取值和最小預(yù)取值比較;
92.若倒數(shù)大于或等于最小預(yù)取值且倒數(shù)小于或等于最大預(yù)取值,則將倒數(shù)作為動態(tài)預(yù)取值;
93.若倒數(shù)小于最小預(yù)取值,則將最小預(yù)取值作為動態(tài)預(yù)取值;
94.若倒數(shù)大于最大預(yù)取值,則將最大預(yù)取值作為動態(tài)預(yù)取值。
95.在一些實施例中,計算模塊320具體用于:
96.根據(jù)本節(jié)點可用資源和數(shù)量,計算動態(tài)預(yù)取值。
97.在一些實施例中,計算模塊320具體用于:
98.根據(jù)本節(jié)點可用資源,計算資源權(quán)重;
99.將資源權(quán)重與數(shù)量的倒數(shù)的乘積作為動態(tài)預(yù)取值。
100.在一些實施例中,預(yù)取模塊330具體用于:
101.根據(jù)與本節(jié)點連接的各節(jié)點的預(yù)取數(shù)據(jù)記錄表,確定未被預(yù)取的數(shù)據(jù);
102.根據(jù)動態(tài)預(yù)取值從cdn節(jié)點預(yù)取對應(yīng)數(shù)據(jù)量的未被預(yù)取的數(shù)據(jù)。
103.可以理解的是,圖3所示的數(shù)據(jù)預(yù)取裝置300中的各個模塊/單元具有實現(xiàn)本公開實施例提供的數(shù)據(jù)預(yù)取方法200中的各個步驟的功能,并能達到其相應(yīng)的技術(shù)效果,為了簡潔,在此不再贅述。
104.圖4示出了一種可以用來實施本公開的實施例的電子設(shè)備的結(jié)構(gòu)圖。電子設(shè)備400旨在表示各種形式的數(shù)字計算機,諸如,膝上型計算機、臺式計算機、工作臺、個人數(shù)字助理、服務(wù)器、刀片式服務(wù)器、大型計算機、和其它適合的計算機。電子設(shè)備400還可以表示各種形式的移動裝置,諸如,個人數(shù)字處理、蜂窩電話、智能電話、可穿戴設(shè)備和其它類似的計算裝置。本文所示的部件、它們的連接和關(guān)系、以及它們的功能僅僅作為示例,并且不意在限制本文中描述的和/或者要求的本公開的實現(xiàn)。
105.如圖4所示,電子設(shè)備400可以包括計算單元401,其可以根據(jù)存儲在只讀存儲器(rom)402中的計算機程序或者從存儲單元408加載到隨機訪問存儲器(ram)403中的計算機程序,來執(zhí)行各種適當(dāng)?shù)膭幼骱吞幚怼T趓am403中,還可存儲電子設(shè)備400操作所需的各種程序和數(shù)據(jù)。計算單元401、rom402以及ram403通過總線404彼此相連。輸入/輸出(i/o)接口405也連接至總線404。
106.電子設(shè)備400中的多個部件連接至i/o接口405,包括:輸入單元406,例如鍵盤、鼠標(biāo)等;輸出單元407,例如各種類型的顯示器、揚聲器等;存儲單元408,例如磁盤、光盤等;以及通信單元409,例如網(wǎng)卡、調(diào)制解調(diào)器、無線通信收發(fā)機等。通信單元409允許電子設(shè)備400通過諸如因特網(wǎng)的計算機網(wǎng)絡(luò)和/或各種電信網(wǎng)絡(luò)與其他設(shè)備交換信息/數(shù)據(jù)。
107.計算單元401可以是各種具有處理和計算能力的通用和/或?qū)S锰幚斫M件。計算單元401的一些示例包括但不限于中央處理單元(cpu)、圖形處理單元(gpu)、各種專用的人工智能(ai)計算芯片、各種運行機器學(xué)習(xí)模型算法的計算單元、數(shù)字信號處理器(dsp)、以及任何適當(dāng)?shù)奶幚砥鳌⒖刂破鳌⑽⒖刂破鞯取S嬎銌卧?01執(zhí)行上文所描述的各個方法和處理,例如方法200。例如,在一些實施例中,方法200可被實現(xiàn)為計算機程序產(chǎn)品,包括計算機程序,其被有形地包含于計算機可讀介質(zhì),例如存儲單元408。在一些實施例中,計算機程序的部分或者全部可以經(jīng)由rom402和/或通信單元409而被載入和/或安裝到設(shè)備400上。當(dāng)計算機程序加載到ram403并由計算單元401執(zhí)行時,可以執(zhí)行上文描述的方法200的一個或多個步驟。備選地,在其他實施例中,計算單元401可以通過其他任何適當(dāng)?shù)姆绞?例如,借助于固件)而被配置為執(zhí)行方法200。
108.本文中以上描述的各種實施方式可以在數(shù)字電子電路系統(tǒng)、集成電路系統(tǒng)、現(xiàn)場可編程門陣列(fpga)、專用集成電路(asic)、專用標(biāo)準(zhǔn)產(chǎn)品(assp)、片上系統(tǒng)(soc)、負(fù)載可編程邏輯設(shè)備(cpld)、計算機硬件、固件、軟件、和/或它們的組合中實現(xiàn)。這些各種實施方式可以包括:實施在一個或者多個計算機程序中,該一個或者多個計算機程序可在包括至少一個可編程處理器的可編程系統(tǒng)上執(zhí)行和/或解釋,該可編程處理器可以是專用或者通用可編程處理器,可以從存儲系統(tǒng)、至少一個輸入裝置、和至少一個輸出裝置接收數(shù)據(jù)和指令,并且將數(shù)據(jù)和指令傳輸至該存儲系統(tǒng)、該至少一個輸入裝置、和該至少一個輸出裝置。
109.用于實施本公開的方法的程序代碼可以采用一個或多個編程語言的任何組合來編寫。這些程序代碼可以提供給通用計算機、專用計算機或其他可編程數(shù)據(jù)處理裝置的處
理器或控制器,使得程序代碼當(dāng)由處理器或控制器執(zhí)行時使流程圖和/或框圖中所規(guī)定的功能/操作被實施。程序代碼可以完全在機器上執(zhí)行、部分地在機器上執(zhí)行,作為獨立軟件包部分地在機器上執(zhí)行且部分地在遠程機器上執(zhí)行或完全在遠程機器或服務(wù)器上執(zhí)行。
110.在本公開的上下文中,計算機可讀介質(zhì)可以是有形的介質(zhì),其可以包含或存儲以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或與指令執(zhí)行系統(tǒng)、裝置或設(shè)備結(jié)合地使用的程序。計算機可讀介質(zhì)可以是計算機可讀信號介質(zhì)或計算機可讀儲存介質(zhì)。計算機可讀介質(zhì)可以包括但不限于電子的、磁性的、光學(xué)的、電磁的、紅外的、或半導(dǎo)體系統(tǒng)、裝置或設(shè)備,或者上述內(nèi)容的任何合適組合。計算機可讀存儲介質(zhì)的更具體示例會包括基于一個或多個線的電氣連接、便攜式計算機盤、硬盤、隨機存取存儲器(ram)、只讀存儲器(rom)、可擦除可編程只讀存儲器(eprom或快閃存儲器)、光纖、便捷式緊湊盤只讀存儲器(cd-rom)、光學(xué)儲存設(shè)備、磁儲存設(shè)備、或上述內(nèi)容的任何合適組合。
111.需要注意的是,本公開還提供了一種存儲有計算機指令的非瞬時計算機可讀存儲介質(zhì),其中,計算機指令用于使計算機執(zhí)行方法200,并達到本公開實施例執(zhí)行其方法達到的相應(yīng)技術(shù)效果,為簡潔描述,在此不再贅述。
112.另外,本公開還提供了一種計算機程序產(chǎn)品,該計算機程序產(chǎn)品包括計算機程序,計算機程序在被處理器執(zhí)行時實現(xiàn)方法200。
113.為了提供與用戶的交互,可以在計算機上實施以上描述的實施例,該計算機具有:用于向用戶顯示信息的顯示裝置(例如,crt(陰極射線管)或者lcd(液晶顯示器)監(jiān)視器);以及鍵盤和指向裝置(例如,鼠標(biāo)或者軌跡球),用戶可以通過該鍵盤和該指向裝置來將輸入提供給計算機。其它種類的裝置還可以用于提供與用戶的交互;例如,提供給用戶的反饋可以是任何形式的傳感反饋(例如,視覺反饋、聽覺反饋、或者觸覺反饋);并且可以用任何形式(包括聲輸入、語音輸入或者、觸覺輸入)來接收來自用戶的輸入。
114.可以將以上描述的實施例實施在包括后臺部件的計算系統(tǒng)(例如,作為數(shù)據(jù)服務(wù)器)、或者包括中間件部件的計算系統(tǒng)(例如,應(yīng)用服務(wù)器)、或者包括前端部件的計算系統(tǒng)(例如,具有圖形用戶界面或者網(wǎng)絡(luò)瀏覽器的用戶計算機,用戶可以通過該圖形用戶界面或者該網(wǎng)絡(luò)瀏覽器來與此處描述的系統(tǒng)和技術(shù)的實施方式交互)、或者包括這種后臺部件、中間件部件、或者前端部件的任何組合的計算系統(tǒng)中。可以通過任何形式或者介質(zhì)的數(shù)字?jǐn)?shù)據(jù)通信(例如,通信網(wǎng)絡(luò))來將系統(tǒng)的部件相互連接。通信網(wǎng)絡(luò)的示例包括:局域網(wǎng)(lan)、廣域網(wǎng)(wan)和互聯(lián)網(wǎng)。
115.計算機系統(tǒng)可以包括客戶端和服務(wù)器。客戶端和服務(wù)器一般遠離彼此并且通常通過通信網(wǎng)絡(luò)進行交互。通過在相應(yīng)的計算機上運行并且彼此具有客戶端-服務(wù)器關(guān)系的計算機程序來產(chǎn)生客戶端和服務(wù)器的關(guān)系。服務(wù)器可以是云服務(wù)器,也可以為分布式系統(tǒng)的服務(wù)器,或者是結(jié)合了區(qū)塊鏈的服務(wù)器。
116.應(yīng)該理解,可以使用上面所示的各種形式的流程,重新排序、增加或刪除步驟。例如,本公開中記載的各步驟可以并行地執(zhí)行也可以順序地執(zhí)行也可以不同的次序執(zhí)行,只要能夠?qū)崿F(xiàn)本公開公開的技術(shù)方案所期望的結(jié)果,本文在此不進行限制。
117.上述具體實施方式,并不構(gòu)成對本公開保護范圍的限制。本領(lǐng)域技術(shù)人員應(yīng)該明白的是,根據(jù)設(shè)計要求和其他因素,可以進行各種修改、組合、子組合和替代。任何在本公開的精神和原則之內(nèi)所作的修改、等同替換和改進等,均應(yīng)包含在本公開保護范圍之內(nèi)。
技術(shù)特征:
1.一種數(shù)據(jù)預(yù)取方法,其特征在于,所述方法應(yīng)用于直播系統(tǒng)中的節(jié)點,包括:獲取所述直播系統(tǒng)中與本節(jié)點連接的節(jié)點的數(shù)量;根據(jù)與本節(jié)點連接的節(jié)點的數(shù)量,計算動態(tài)預(yù)取值;根據(jù)所述動態(tài)預(yù)取值,從所述直播系統(tǒng)中的cdn節(jié)點預(yù)取對應(yīng)數(shù)據(jù)量的數(shù)據(jù)。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述獲取所述直播系統(tǒng)中與本節(jié)點連接的節(jié)點的數(shù)量,包括:根據(jù)本節(jié)點的節(jié)點連接記錄表,確定所述直播系統(tǒng)中與本節(jié)點連接的節(jié)點的數(shù)量。3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)與本節(jié)點連接的節(jié)點的數(shù)量,計算動態(tài)預(yù)取值,包括:計算所述數(shù)量的倒數(shù),并根據(jù)所述倒數(shù)確定所述動態(tài)預(yù)取值。4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述根據(jù)所述倒數(shù)確定所述動態(tài)預(yù)取值,包括:將所述倒數(shù)與預(yù)設(shè)的最大預(yù)取值和最小預(yù)取值比較;若所述倒數(shù)大于或等于所述最小預(yù)取值且所述倒數(shù)小于或等于所述最大預(yù)取值,則將所述倒數(shù)作為所述動態(tài)預(yù)取值;若所述倒數(shù)小于所述最小預(yù)取值,則將所述最小預(yù)取值作為所述動態(tài)預(yù)取值;若所述倒數(shù)大于所述最大預(yù)取值,則將所述最大預(yù)取值作為所述動態(tài)預(yù)取值。5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)與本節(jié)點連接的節(jié)點的數(shù)量,計算動態(tài)預(yù)取值,包括:根據(jù)本節(jié)點可用資源和所述數(shù)量,計算動態(tài)預(yù)取值。6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述根據(jù)本節(jié)點可用資源和所述數(shù)量,計算動態(tài)預(yù)取值,包括:根據(jù)本節(jié)點可用資源,計算資源權(quán)重;將所述資源權(quán)重與所述數(shù)量的倒數(shù)的乘積作為所述動態(tài)預(yù)取值。7.根據(jù)權(quán)利要求1-6中任一項所述的方法,其特征在于,所述根據(jù)所述動態(tài)預(yù)取值,從所述直播系統(tǒng)中的cdn節(jié)點預(yù)取對應(yīng)數(shù)據(jù)量的數(shù)據(jù),包括:根據(jù)與本節(jié)點連接的各節(jié)點的預(yù)取數(shù)據(jù)記錄表,確定未被預(yù)取的數(shù)據(jù);根據(jù)所述動態(tài)預(yù)取值從所述cdn節(jié)點預(yù)取對應(yīng)數(shù)據(jù)量的未被預(yù)取的數(shù)據(jù)。8.一種數(shù)據(jù)預(yù)取裝置,其特征在于,所述裝置應(yīng)用于直播系統(tǒng)中的節(jié)點,包括:獲取模塊,用于獲取所述直播系統(tǒng)中與本節(jié)點連接的節(jié)點的數(shù)量;計算模塊,用于根據(jù)與本節(jié)點連接的節(jié)點的數(shù)量,計算動態(tài)預(yù)取值;預(yù)取模塊,用于根據(jù)所述動態(tài)預(yù)取值,從所述直播系統(tǒng)中的cdn節(jié)點預(yù)取對應(yīng)數(shù)據(jù)量的數(shù)據(jù)。9.一種電子設(shè)備,其特征在于,所述電子設(shè)備包括:至少一個處理器;以及與所述至少一個處理器通信連接的存儲器;其中,所述存儲器存儲有可被所述至少一個處理器執(zhí)行的指令,所述指令被所述至少一個處理器執(zhí)行,以使所述至少一個處理器能夠執(zhí)行權(quán)利要求1-7中任一項所述的方法。
10.一種存儲有計算機指令的非瞬時計算機可讀存儲介質(zhì),其特征在于,所述計算機指令用于使計算機執(zhí)行權(quán)利要求1-7中任一項所述的方法。
技術(shù)總結(jié)
本公開的實施例提供了一種數(shù)據(jù)預(yù)取方法、裝置、設(shè)備以及存儲介質(zhì)。該方法應(yīng)用于P2P直播系統(tǒng)中的P2P節(jié)點,包括:獲取P2P直播系統(tǒng)中與本節(jié)點連接的P2P節(jié)點的數(shù)量;根據(jù)與本節(jié)點連接的P2P節(jié)點的數(shù)量,計算動態(tài)預(yù)取值;根據(jù)動態(tài)預(yù)取值,從P2P直播系統(tǒng)中的CD節(jié)點預(yù)取對應(yīng)數(shù)據(jù)量的數(shù)據(jù)。以此方式,可以基于與本節(jié)點連接的P2P節(jié)點的數(shù)量動態(tài)調(diào)整預(yù)取值,在達到數(shù)據(jù)差的同時盡可能地避免過度預(yù)取,從而進一步提高數(shù)據(jù)分享率。高數(shù)據(jù)分享率。高數(shù)據(jù)分享率。
