System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及云服務,特別是涉及一種同機房回源方法、裝置、電子設備及存儲介質。
技術介紹
1、視頻cdn(content?delivery?network,內容分發網絡)指的是一套能夠提供視頻服務的cdn系統,一般包括存儲、同步、回源、調度、視頻文件解析等系統。客戶端觀看視頻,視頻流文件下載采用的是如下的方式:客戶端發起請求后,首先從視頻文件解析服務器獲取視頻文件解析列表,然后對解析列表中的文件依次進行下載。下載每個文件時,均需要向調度器進行一次請求,并根據調度器返回的結果去指定的cdn邊緣節點下載文件。如文件的下載請求到達邊緣節點,該節點下存在該文件,則直接向客戶端吐出數據;如果邊緣節點下不存在該文件,則需要向上游節點發送文件的下載請求,在接收到上游節點數據后再向客戶端吐數據,同時把文件存儲在本地;如果上游節點無此文件,則需要向此上游節點的上游節點發送請求。該種文件下載方式稱為回源。
2、在cdn回源中,一般上游機房有多臺服務器,下游機房如果沒有找到某個視頻文件,會向上游機房服務器發送請求。這種跨機房向上游機房回源的方式具有兩個弊端:弊端一、回源的帶寬成本高;弊端二、回源響應時間長。
技術實現思路
1、本專利技術實施例的目的在于提供一種同機房回源方法、裝置、電子設備及存儲介質,以實現快速、低帶寬成本回源。具體技術方案如下:
2、在本專利技術實施的第一方面,首先提供了一種同機房回源方法,應用于第一服務器,該方法包括:
3、在接收到文件下載請求且所
4、在所述第一機房為已建機房的情況下,依據所述第一服務器磁盤可用空間確定所述第一服務器的類型;
5、在所述第一服務器為新加入機房服務器時,利用第一同機房回源方法處理所述文件下載請求;
6、在所述第一服務器為機房中老服務器時,利用第二同機房回源方法處理所述文件下載請求。
7、可選地,在接收到文件下載請求且所述第一服務器中未存儲請求下載的目標文件的情況下,確定所在第一機房的類型的步驟,包括:
8、在接收到文件下載請求且所述第一服務器中未存儲請求下載的目標文件的情況下,確定所述第一機房中各第二服務器的磁盤可用空間,其中,所述各第二服務器為所述第一機房中的除所述第一服務器外的各其他服務器;
9、確定磁盤可用空間低于第一預設百分比的第二服務器的第一數量;
10、在所述第一數量小于第二預設百分比的情況下,確定所述第一機房為新建機房;
11、在所述第一數量大于或等于所述第二預設百分比的情況下,確定所述第一機房為已建機房。
12、可選地,利用第一同機房回源方法處理所述文件下載請求的步驟,包括:
13、在所在機房內廣播文件查詢請求;
14、判斷預設時長內是否接收到目標服務器的響應信息,其中,所述目標服務器在所述第一機房內、且存儲有所查詢文件;
15、若接收到所述目標服務器的響應信息,則向所述目標服務器進行回源;
16、若未接收到所述目標服務器的響應信息,則向上游機房回源。
17、可選地,利用第二同機房回源方法處理所述文件下載請求的步驟,包括:
18、確定請求下載的目標文件的哈希值,并基于所述哈希值判斷所述目標文件是否由所述第一服務器存儲;
19、若是,向上游機房回源;
20、若否,依據所述哈希值在所述第一機房中查找匹配的第三服務器,并請求從所述第三服務器側獲取所述目標文件。
21、可選地,所述方法還包括:
22、確定所述第一服務器磁盤的可用率;
23、與所述第一機房中的各第二服務器通信發送所述可用率,并接收各所述第二服務器發送的磁盤的可用率。
24、可選地,所述方法還包括:
25、在所述第一服務器磁盤的可利用率小于第三預設百分比的情況下,篩選所述磁盤中存儲的冷文件;其中,所述冷文件為預設時間段內未被下載的文件;
26、將所述冷文件從所述磁盤中刪除,并將預設文件過濾器中所述冷文件的緩存索引刪除。
27、可選地,所述方法還包括:
28、在本地磁盤中存儲回源得到的目標文件;
29、在內存中的布谷鳥過濾器中建立所述目標文件的緩存索引,其中,所述緩存索引用于指示所述第一服務器中管理的文件信息。
30、可選地,在所述確定所在第一機房的類型的步驟之后,所述方法還包括:
31、在所述第一機房為新建機房的情況下,確定請求下載的目標文件的哈希值,并基于所述哈希值判斷所述目標文件是否由所述第一服務器存儲;
32、若是,向上游機房回源;
33、若否,依據所述哈希值在所述第一機房中查找匹配的第三服務器,并請求從所述第三服務器側獲取所述目標文件。
34、在本專利技術實施的第二方面,還提供了一種同機房回源裝置,其中,所述裝置包括:
35、第一確定模塊,用于在接收到文件下載請求且所述第一服務器中未存儲請求下載的目標文件的情況下,確定所在第一機房的類型;
36、第二確定模塊,用于在所述第一機房為已建機房的情況下,依據所在第一服務器的磁盤可用空間確定所述第一服務器的類型;
37、第一回源模塊,用于在所述第一服務器為新加入機房服務器時,利用第一同機房回源方法處理所述文件下載請求;
38、第二回源模塊,用于在所述第一服務器為機房中老服務器時,利用第二同機房回源方法處理所述文件下載請求。
39、可選地,所述第一確定模塊包括:可用空間確定子模塊,用于在接收到文件下載請求且所述第一服務器中未存儲請求下載的目標文件的情況下,確定所述第一機房中各第二服務器的磁盤可用空間,其中,所述各第二服務器為所述第一機房中的除所述第一服務器外的各其他服務器;數量確定子模塊,用于確定磁盤可用空間低于第一預設百分比的第二服務器的第一數量;類型確定子模塊,用于在所述第一數量小于第二預設百分比的情況下,確定所述第一機房為新建機房;在所述第一數量大于或等于所述第二預設百分比的情況下,確定所述第一機房為已建機房。
40、可選地,所述第一回源模塊包括:廣播子模塊,用于在所述第一服務器為新加入機房服務器時,在所在機房內廣播文件查詢請求;第一判斷子模塊,用于判斷預設時長內是否接收到目標服務器的響應信息,其中,所述目標服務器在所述第一機房內、且存儲有所查詢文件;第一執行子模塊,用于若接收到所述目標服務器的響應信息,則向所述目標服務器進行回源;第二執行子模塊,用于若未接收到所述目標服務器的響應信息,則向上游機房回源。
41、可選地,所述第二回源模塊包括:第二判斷子模塊,用于在所述第一服務器為機房中老服務器時,確定請求下載的目標文件的哈希值,并基于所述哈希值判斷所述目標文件是否由所述第一服務器存儲;第三執行子模塊,用于若是,向上游機本文檔來自技高網...
【技術保護點】
1.一種同機房回源方法,應用于第一服務器,其特征在于,包括:
2.根據權利要求1所述的方法,其特征在于,在接收到文件下載請求且所述第一服務器中未存儲請求下載的目標文件的情況下,確定所在第一機房的類型的步驟,包括:
3.根據權利要求1所述的方法,其特征在于,利用第一同機房回源方法處理所述文件下載請求的步驟,包括:
4.根據權利要求1所述的方法,其特征在于,利用第二同機房回源方法處理所述文件下載請求的步驟,包括:
5.根據權利要求2所述的方法,其特征在于,所述方法還包括:
6.根據權利要求1所述的方法,其特征在于,所述方法還包括:
7.根據權利要求6所述的方法,其特征在于,所述方法還包括:
8.根據權利要求1所述的方法,其特征在于,在所述確定所在第一機房的類型的步驟之后,所述方法還包括:
9.一種同機房回源裝置,其特征在于,所述裝置包括:
10.一種電子設備,其特征在于,包括處理器、通信接口、存儲器和通信總線,其中,處理器,通信接口,存儲器通過通信總線完成相互間的通信;
...【技術特征摘要】
1.一種同機房回源方法,應用于第一服務器,其特征在于,包括:
2.根據權利要求1所述的方法,其特征在于,在接收到文件下載請求且所述第一服務器中未存儲請求下載的目標文件的情況下,確定所在第一機房的類型的步驟,包括:
3.根據權利要求1所述的方法,其特征在于,利用第一同機房回源方法處理所述文件下載請求的步驟,包括:
4.根據權利要求1所述的方法,其特征在于,利用第二同機房回源方法處理所述文件下載請求的步驟,包括:
5.根據權利要求2所述的方法,其特征在于,所述方法還包括:
6.根據權利要求1所述的方法,其...
【專利技術屬性】
技術研發人員:賈鵬,
申請(專利權)人:北京奇藝世紀科技有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。