資源請求的調度方法和調度裝置的制造方法
【專利摘要】本發明實施例提供一種資源請求的調度方法和調度裝置。該調度方法包括:獲取發自客戶端的多媒體內容的資源請求;根據所述多媒體內容的信息計算所述多媒體內容的第一映射參考值;分別獲取多個內容服務器的第二映射參考值;選取獲取到的第二映射參考值與所述第一映射參考值匹配的內容服務器;將選取的內容服務器分配給所述客戶端。可從邏輯上對眾多資源進行動態的分區或分組管理和提供,使得在系統運行過程中,任一內容服務器著重用于提供其被映射到的資源,從而提高資源(如多媒體內容)的緩存命中率。
【專利說明】
資源請求的調度方法和調度裝置
技術領域
[0001]本發明涉及信息處理技術,尤其涉及一種資源請求的調度方法和調度裝置。
【背景技術】
[0002]在內容分發網絡(CDN)中,當服務器端接收到內容播放客戶端對多媒體內容的下載請求,以線下保存或線上觀看時,在服務器端需要為該內容播放客戶端的該下載請求分配內容服務器,再將包括分配的內容服務器(如CDN節點服務器)的地址的下載地址發給該內容播放客戶端。此后,內容播放客戶端根據下載地址來持續地下載多媒體內容的片段,以進行緩存播放或存儲到存儲介質中。
[0003]現有的內容服務器調度技術中,多數根據用戶所在的地理區域來為用戶(所使用的內容播放客戶端)分配用于下載被請求的多媒體內容的內容服務器。然而,由于用戶對多媒體內容的需求各有不同,因此在內容服務器啟動運行的初期,被分配的內容服務器在處理各種多媒體內容的下載請求時,可能由于其自身并無存有被請求的多媒體內容,需要從該多媒體內容的回源地址讀取該多媒體內容,再提供給發出下載請求的客戶端,出現多媒體內容緩存命中率低的問題。另一方面,在實際運行一段時間以后,伺服同一地理區域的用戶的內容服務器可能實際存有各類、大量的多媒體內容,從各類電視劇劇集、電影到綜藝節目的內容,然而其存有的一些多媒體內容實際被請求下載的頻率并不高,出現緩存數據的利用率低的問題。
【發明內容】
[0004]本發明的目的在于,提供一種資源請求的調度方案,使伺服資源請求的多個服務器分工伺服預定范圍或預定量的資源數據,以提高資源請求的命中率,提高數據處理效率。
[0005]根據本發明的一方面,提供一種資源請求的調度方法,包括:獲取發自客戶端的多媒體內容的資源請求;根據所述多媒體內容的信息計算所述多媒體內容的第一映射參考值;分別獲取多個內容服務器的第二映射參考值;選取獲取到的第二映射參考值與所述第一映射參考值匹配的內容服務器;將選取的內容服務器分配給所述客戶端。
[0006]進一步地,所述根據所述多媒體內容的信息計算第一映射參考值的處理包括:根據一致性哈希算法和所述多媒體內容的信息計算所述多媒體內容的第一映射參考值,所述第二映射參考值均為根據所述一致性哈希算法計算得到的哈希值。
[0007]可選地,所述選取獲取到的第二映射參考值與所述第一映射參考值匹配的內容服務器的處理包括:選取其第二映射參考值與所述第一映射參考值最為接近的一個或多個內容服務器。
[0008]可選地,所述方法還包括:將包括選取的內容服務器的域名的資源響應發送給所述客戶端。
[0009]可選地,所述多媒體內容的信息包括所述多媒體內容的存儲路徑信息,并且所述多個內容服務器的第二映射參考值均為根據所述一致性哈希算法和所述內容服務器的標識計算得到。
[0010]根據本發明的另一方面,還提供一種資源請求的調度裝置,包括:資源請求獲取單元,用于獲取發自客戶端的多媒體內容的資源請求;內容映射參考值計算單元,用于根據所述多媒體內容的信息計算所述多媒體內容的第一映射參考值;服務器映射參考值獲取單元,用于分別獲取多個內容服務器的第二映射參考值;內容服務器選取單元,用于選取所述服務器映射參考值獲取單元獲取到的第二映射參考值與所述第一映射參考值匹配的內容服務器;內容服務器分配單元,用于分配將所述內容服務器選取單元選取的內容服務器分配給所述客戶端。
[0011]進一步地,所述內容映射參考值計算單元用于根據一致性哈希算法和所述多媒體內容的信息計算所述多媒體內容的第一映射參考值,所述服務器映射參考值獲取單元獲取到的所述第二映射參考值均為根據所述一致性哈希算法計算得到的哈希值。
[0012]可選地,所述內容服務器選取單元用于選取其第二映射參考值與所述第一映射參考值最為接近的一個或多個內容服務器。
[0013]可選地,所述裝置還包括:資源響應發送單元,用于將包括所述內容服務器選取的內容服務器的域名的資源響應發送給所述客戶端。
[0014]進一步地,所述多媒體內容的信息包括所述多媒體內容的存儲路徑信息,并且所述多個內容服務器的第二映射參考值均為根據所述一致性哈希算法和所述內容服務器的標識計算得到。
[0015]根據本發明實施例提供的資源請求的調度方法和調度裝置,通過將例如多媒體內容的資源根據關聯算法映射到相應的域名,再將映射到的域名與指定提供該多媒體內容的內容服務器建立細粒度的域名解析關系,可從邏輯上對眾多資源進行動態的分區或分組管理和提供,使得在系統運行過程中,任一內容服務器著重用于提供其被映射到的資源,從而提高資源(如多媒體內容)的緩存命中率。
【附圖說明】
[0016]圖1是示出根據本發明的總體發明構思進行內容服務器分配的示例性示意圖;
[0017]圖2是示出根據本發明的總體發明構思的資源、域名和內容服務器之間的關聯關系的不意圖;
[0018]圖3是示出根據本發明的總體發明構思的系統架構的示例性示意圖;
[0019]圖4是示出根據本發明的示例性實施例一的資源請求的調度方法的流程圖;
[0020]圖5是示出根據本發明的示例性實施例二的資源請求的調度裝置的邏輯框圖。
【具體實施方式】
[0021]本發明的基本構思是,提供一種將例如多媒體內容的資源根據關聯算法映射到相應的域名,再將映射到的域名與指定提供該多媒體內容的內容服務器建立域名解析關系。在接收到對該多媒體內容的請求時,將包括該映射到的域名的下載地址提供給資源請求方(客戶端),使資源請求方根據請求的資源映射到的域名來從指定提供該多媒體內容的內容服務器請求和下載請求的資源。通過細粒度的域名可從邏輯上對眾多資源進行動態的分區或分組管理和提供,使得在系統運行過程中,任一內容服務器著重用于提供其被映射到的資源,從而提高資源(如多媒體內容)的緩存命中率。
[0022]圖1是示出根據本發明的總體發明構思進行內容服務器分配的示例性示意圖。
[0023]參照圖1,在提供資源的業務系統中,根據關聯算法為業務系統中的各個內容服務器(如圖1中的節點I?節點4)分別計算節點的映射參考值;在此基礎上,根據該關聯算法為其提供的眾多資源(如圖1中的內容I和內容2)分別計算資源的映射參考值。該關聯算法可以是例如一致性哈希算法。一致性哈希算法是用于分布式系統中的各緩存節點的負載平衡的一種算法,其具有較好的容錯性和可擴展性。
[0024]在本發明提出的構思中,將通過前述計算得到的哈希值(節點的映射參考值和資源的映射參考值)映射到預定的圓上,由此得到如圖1所示的標注有大圓點和小圓點的圓。其中,小圓點表示例如多媒體內容的資源的映射參考值,大圓點表示內容服務器的映射參考值。
[0025]在此基礎上,可動態地從邏輯上確定用于提供各資源的內容服務器。具體地,在圖1所示的圓上根據資源的映射參考值對應的小圓點順時針地查找與之距離最近的大圓點,與該大圓點相應的內容服務器可被選取為用于提供該資源的內容服務器。例如,自內容I映射到的小圓點沿順時針方向查找到的最近的大圓點對應的內容服務器時節點2;自內容2映射到的小圓點沿順時針方向查找到的最近的大圓點對應的內容服務器時節點3。由此,可將任一資源映射到系統中相應的內容服務器。
[0026]此外,提供資源的業務系統為映射的小圓點落在相鄰兩個大圓點之間的資源范圍設定域名,為設定的域名設定相應的內容服務器的信息(如IP地址),再根據設定的域名和內容服務器的IP地址生成域名解析信息,并部署到域名解析服務器上。
[0027]圖2是示出根據本發明的總體發明構思的資源、域名和內容服務器之間的關聯關系的不意圖。
[0028]其中,圖2中的(A)示出作為資源的多媒體內容的示例。圖2中的(B)示出根據前述的關聯算法(如一致性哈希方法)計算得到的映射參考值獲取到的資源范圍以及相應設定的域名的信息。例如,(A)中的“a.mp4”、“c.mp4” “e.flv”以及“f.mp4”被劃歸到一組,并為該組設定域名“dl.le.com”,“b.flv”、“d.mp4”和“g.mp4”被劃歸到一組,并為該組設定域名“d2.1e.com”。
[0029]此后,如圖2中的(C)所示,分別為域名“dl.le.com”和域名“d2.le.com”設定內容服務器“SA1”和“SA4”。
[0030]在如前設定域名和相應的內容服務器,并且將包括域名和相應的內容服務器的信息部署到域名解析服務器上后,當接收到客戶端的資源請求時,根據被請求的資源(如多媒體內容)的信息的映射參考值確定提供該多媒體內容的內容服務器(如CDN節點服務器),并且將包括確定的內容服務器對應的域名的下載地址分發給請求的客戶端。客戶端根據接收到的下載地址從相應的內容服務器下載多媒體內容的數據,以進行播放或保存。
[0031]圖3是示出根據本發明的總體發明構思的系統架構的示例性示意圖。
[0032]參照圖3,如無線通信終端110或個人電腦120的客戶端通過網絡130向資源提供商的服務器發起資源請求,例如指示下載“瑯琊榜第一集”的請求。資源提供商的調度服務器150在接收到該請求后,根據“狼琊榜第一集”劇集的信息來計算其映射參考值(以下統稱為第一映射參考值),再調取為其管理調度的多個內容服務器160-1?160-n的映射參考值(以下統稱為第二映射參考值),然后從該多個內容服務器160-1?160-n當中選取其第二映射參考值與前述第一映射參考值匹配的內容服務器,例如,按照前述在映射到圓上自第一映射參考值映射到的小圓點順時針查找到的第一個大圓點對應的內容服務器(假設為內容服務器160-1),將內容服務器160-1分配給該客戶端的該資源請求,并將包括內容服務器160-1的域名的下載地址的響應發送給該客戶端(無線通信終端110或個人電腦120)。
[0033]此后,無線通信終端110或個人電腦120使用調度服務器150提供的下載地址進行劇集下載時,部署有前述解析信息的域名服務器140將內容服務器160-1的IP地址返回給無線通信終端110或個人電腦120,無線通信終端110或個人電腦120通過網絡從訪問內容服務器化。^持續下載劇集的內容片段,以進行播放或存儲。
[0034]根據本發明的總體構思提出的技術方案,由于從邏輯上將各個內容服務器負責提供的資源內容進行了劃分,使得每個內容服務器能夠集中緩存其負責提供的資源的內容,因此在運行的過程中用戶對資源的請求能夠被調度到負責相應資源的內容服務器,使得緩存資源的命中率提尚,提尚了運彳丁效率。
[0035]下面結合附圖詳細描述本發明的示例性實施例。
[0036]實施例一
[0037]圖4是示出根據本發明的示例性實施例一的資源請求的調度方法的流程圖。在如前所述的調度服務器150或如圖5中示出的資源請求的調度裝置中執行該實施例的方法。
[0038]參照圖4,在步驟S410,獲取發自客戶端的多媒體內容的資源請求。
[0039]例如,獲取到無線通信終端110的應用客戶端發送的用于下載播放“瑯琊榜第一集”的請求。
[0040]在步驟S420,根據所述多媒體內容的信息計算所述多媒體內容的第一映射參考值。
[0041]優選地,根據一致性哈希算法和所述多媒體內容的信息計算所述多媒體內容的第一映射參考值。
[0042]在步驟S430,分別獲取多個內容服務器的第二映射參考值。
[0043]相應地,該多個內容服務器的第二映射參考值也均為根據所述一致性哈希算法計算得到的哈希值。
[0044]通過使用一致性哈希算法來計算被請求的資源的第一映射參考值以及內容服務器的第二映射參考值,可利用一致性哈希算法在負載均衡方面呈現的優勢對內容服務器的分配進行優化。
[0045]這里,可以在步驟S430來分別計算多個內容服務器的第二映射參考值,也可以讀取預先計算好的多個內容服務器的第二映射參考值。
[0046]具體地,所述多媒體內容的信息包括所述多媒體內容的存儲路徑信息,并且所述多個內容服務器的第二映射參考值均為根據所述一致性哈希算法和所述內容服務器的標識計算得到。這里,可以為指定同一域名的多個內容服務器設定相同的標識,從而為同一域名設定在不同地區的多個內容服務器的IP地址。
[0047]在步驟S440,選取獲取到的第二映射參考值與所述第一映射參考值匹配的內容服務器。
[0048]具體地,可選取其第二映射參考值與所述第一映射參考值最為接近的一個或多個內容服務器,例如,如圖1中所示,被請求的多媒體內容的第一映射參考值對應的小圓點順時針地與之距離最近的大圓點對應的內容或多個內容服務器。
[0049]在步驟S450,將選取的內容服務器分配給所述客戶端。
[0050]可選地,該方法還包括:將包括選取的內容服務器的域名的資源響應發送給所述客戶端。
[0051]通過將例如多媒體內容的資源根據關聯算法映射到相應的域名,再將映射到的域名與指定提供該多媒體內容的內容服務器建立細粒度的域名解析關系,可從邏輯上對眾多資源進行動態的分區或分組管理和提供,使得在系統運行過程中,任一內容服務器著重用于提供其被映射到的資源,從而提高資源(如多媒體內容)的緩存命中率。
[0052]實施例二
[0053]圖5是示出根據本發明的示例性實施例二的資源請求的調度裝置的邏輯框圖。
[0054]參照圖5,實施例二的資源請求的調度裝置包括資源請求獲取單元510、內容映射參考值計算單元520、服務器映射參考值獲取單元530、內容服務器選取單元540和內容服務器分配單元550。
[0055]資源請求獲取單元510用于獲取發自客戶端的多媒體內容的資源請求。
[0056]內容映射參考值計算單元520,用于根據所述多媒體內容的信息計算所述多媒體內容的第一映射參考值。
[0057]具體地,內容映射參考值計算單元520用于根據一致性哈希算法和所述多媒體內容的信息計算所述多媒體內容的第一映射參考值。
[0058]服務器映射參考值獲取單元530用于分別獲取多個內容服務器的第二映射參考值。
[0059]具體地,服務器映射參考值獲取單元530獲取到的所述第二映射參考值均為根據所述一致性哈希算法計算得到的哈希值。
[0060]內容服務器選取單元540用于選取所述服務器映射參考值獲取單元獲取到的第二映射參考值與所述第一映射參考值匹配的內容服務器。
[0061]具體地,內容服務器選取單元540用于選取其第二映射參考值與所述第一映射參考值最為接近的一個或多個內容服務器。
[0062]內容服務器分配單元550用于分配將所述內容服務器選取單元選取的內容服務器分配給所述客戶端。
[0063]可選地,該裝置還包括:資源響應發送單元560,用于將包括所述內容服務器選取的內容服務器的域名的資源響應發送給所述客戶端。
[0064]進一步地,所述多媒體內容的信息包括所述多媒體內容的存儲路徑信息,并且所述多個內容服務器的第二映射參考值均為根據所述一致性哈希算法和所述內容服務器的標識計算得到。
[0065]需要指出,根據實施的需要,可將本申請中描述的各個部件/步驟拆分為更多部件/步驟,也可將兩個或多個部件/步驟或者部件/步驟的部分操作組合成新的部件/步驟,以實現本發明的目的。
[0066]上述根據本發明的方法可在硬件、固件中實現,或者被實現為可存儲在記錄介質(諸如CD R0M、RAM、軟盤、硬盤或磁光盤)中的軟件或計算機代碼,或者被實現通過網絡下載的原始存儲在遠程記錄介質或非暫時機器可讀介質中并將被存儲在本地記錄介質中的計算機代碼,從而在此描述的方法可被存儲在使用通用計算機、專用處理器或者可編程或專用硬件(諸如ASIC或FPGA)的記錄介質上的這樣的軟件處理。可以理解,計算機、處理器、微處理器控制器或可編程硬件包括可存儲或接收軟件或計算機代碼的存儲組件(例如,RAM、ROM、閃存等),當所述軟件或計算機代碼被計算機、處理器或硬件訪問且執行時,實現在此描述的處理方法。此外,當通用計算機訪問用于實現在此示出的處理的代碼時,代碼的執行將通用計算機轉換為用于執行在此示出的處理的專用計算機。
[0067]以上所述,僅為本發明的【具體實施方式】,但本發明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發明揭露的技術范圍內,可輕易想到變化或替換,都應涵蓋在本發明的保護范圍之內。因此,本發明的保護范圍應以所述權利要求的保護范圍為準。
【主權項】
1.一種資源請求的調度方法,包括: 獲取發自客戶端的多媒體內容的資源請求; 根據所述多媒體內容的信息計算所述多媒體內容的第一映射參考值; 分別獲取多個內容服務器的第二映射參考值; 選取獲取到的第二映射參考值與所述第一映射參考值匹配的內容服務器; 將選取的內容服務器分配給所述客戶端。2.根據權利要求1所述的方法,其中,所述根據所述多媒體內容的信息計算第一映射參考值的處理包括:根據一致性哈希算法和所述多媒體內容的信息計算所述多媒體內容的第一映射參考值, 所述第二映射參考值均為根據所述一致性哈希算法計算得到的哈希值。3.根據權利要求2所述的方法,其中,所述選取獲取到的第二映射參考值與所述第一映射參考值匹配的內容服務器的處理包括: 選取其第二映射參考值與所述第一映射參考值最為接近的一個或多個內容服務器。4.根據權利要求1?3中任一項所述的方法,其中,所述方法還包括: 將包括選取的內容服務器的域名的資源響應發送給所述客戶端。5.根據權利要求2或3所述的方法,其中,所述多媒體內容的信息包括所述多媒體內容的存儲路徑信息,并且所述多個內容服務器的第二映射參考值均為根據所述一致性哈希算法和所述內容服務器的標識計算得到。6.—種資源請求的調度裝置,包括: 資源請求獲取單元,用于獲取發自客戶端的多媒體內容的資源請求; 內容映射參考值計算單元,用于根據所述多媒體內容的信息計算所述多媒體內容的第一映射參考值; 服務器映射參考值獲取單元,用于分別獲取多個內容服務器的第二映射參考值; 內容服務器選取單元,用于選取所述服務器映射參考值獲取單元獲取到的第二映射參考值與所述第一映射參考值匹配的內容服務器; 內容服務器分配單元,用于分配將所述內容服務器選取單元選取的內容服務器分配給所述客戶端。7.根據權利要求6所述的裝置,其中,所述內容映射參考值計算單元用于根據一致性哈希算法和所述多媒體內容的信息計算所述多媒體內容的第一映射參考值,所述服務器映射參考值獲取單元獲取到的所述第二映射參考值均為根據所述一致性哈希算法計算得到的哈希值。8.根據權利要求7所述的裝置,其中,所述內容服務器選取單元用于選取其第二映射參考值與所述第一映射參考值最為接近的一個或多個內容服務器。9.根據權利要求6?8中任一項所述的裝置,其中,所述裝置還包括: 資源響應發送單元,用于將包括所述內容服務器選取的內容服務器的域名的資源響應發送給所述客戶端。10.根據權利要求7或8所述的裝置,其中,所述多媒體內容的信息包括所述多媒體內容的存儲路徑信息,并且所述多個內容服務器的第二映射參考值均為根據所述一致性哈希算法和所述內容服務器的標識計算得到。
【文檔編號】H04L29/08GK105959360SQ201610262879
【公開日】2016年9月21日
【申請日】2016年4月25日
【發明人】張鵬
【申請人】樂視控股(北京)有限公司, 樂視云計算有限公司