• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    離線下載的系統及方法技術方案

    技術編號:9035981 閱讀:163 留言:0更新日期:2013-08-15 02:40
    一種離線下載的系統包括下載服務器集群、分發服務器及存儲服務器。下載服務器集群包括兩個以上下載服務器,所述下載服務器根據其負載反饋負載信息及根據離線任務從互聯網中獲取數據信息。下載服務器獲取的數據信息儲存在存儲服務器。分發服務器與所述下載服務器集群通信,可根據下載服務器的實際負載信息生成調度規則,并根據所述調度規則對離線任務進行分配。對于負載程度高的所述下載服務器,只分發少量或是不分發任務,而對于負載程度低的所述下載服務器,則相應的多分發任務。因此,所述下載服務器所分發到的任務與其實時負載程度相關,有效的提高了下載服務器利用率、磁盤空間也得到了充分利用。本發明專利技術還提供一種離線下載的方法。

    【技術實現步驟摘要】
    離線下載的系統及方法
    本專利技術涉及一種互聯網技術,特別是涉及一種離線下載的系統及方法。
    技術介紹
    云端訂閱下載,又稱為離線下載,本質是下載工具的服務器代替用戶先行下載。比如某個資源是冷門資源,下載速度很慢,用戶就得下載很久,如果用戶使用離線下載技術,就可以讓服務商的服務器代替用戶下載,用戶就可以關掉下載工具或者機器,節約時間和電費。等到離線下載好后,用戶再從下載工具的服務器上高速下載到客戶端的電腦上。離線下載能省卻許多掛機等待的時間,最重要的是能夠騰出電腦寬帶做其他的事情。以服務器高速代理下載,中轉到離線空間,再以用戶從離線下載服務器下載到本機的方式提供網絡加速服務的離線下載獲得了廣泛的應用。云端訂閱的一般步驟為:用戶提交需要下載的文件下載地址;離線任務管理服務器接受用戶提交的訂閱請求;離線任務管理服務器收到請求后先查詢數據庫的映射記錄,檢測服務器端是否已經有下載或者下載完成的對應文件,如果有就直接通知客戶端,客戶端可以直接從服務器云端下載,同時使用P2SP(點對服務器和點)技術,如果沒有合適的文件在服務端匹配到,就將離線下載任務請求發送到離線任務分發服務器;離線任務分發服務器依據下載鏈接Hash(把任意長度的輸入,通過散列算法,變換成固定長度的輸出,該輸出就是散列值)的首字節區間進行離線任務的調度,離線下載服務器集群依據URL(Uniform/UniversalResourceLocator,統一資源定位符,也被稱為網頁地址)開始啟動下載,從因特網下載數據;下載完成的數據同時同步到云存儲服務器,同時將下載結果寫入數據庫。在一般云端訂閱下載系統中,下載任務分發是按照任務鏈接Hash首字節區間范圍分組,但是用戶任務需求和文件大小對應的分布是非常不均勻的,由此造成下載服務器的負載不均勻。下載服務器由于是p2p(點對點)軟件的下載,數據來源和寫入都是隨機的,下載服務器的IO非常容易成為下載系統的瓶頸,目前的方式只是依據下載文件鏈接Hash進行隨機分組,實際的效果依然會導致部分下載服務器的磁盤IO成為系統瓶頸,下載任務需要排隊,無法及時完成下載。此外,由于P2P(點對服務器和點)網絡自身的特性,服務器端下載具有不確定性,下載是否能夠最終完成和什么時候能夠下載完成是難以預期的,導致下載服務器磁盤的實際利用和分配情況難以確定。因此,上述傳統的離線下載系統下載服務器利用率低、磁盤空間得不到充分利用。
    技術實現思路
    鑒于上述狀況,有必要針對傳統的離線下載系統下載服務器利用率低的問題,提供一種離線下載的系統及方法。一種離線下載的系統,包括:下載服務器集群,所述下載服務器集群包括兩個以上下載服務器,所述下載服務器根據其負載反饋負載信息及根據離線任務從互聯網中獲取數據信息;分發服務器,獲得所述離線任務,所述分發服務器與所述下載服務器集群通信,接收所述負載信息并根據所述負載信息生成調度規則,所述分發服務器根據所述調度規則將所述離線任務分發給所述下載服務器;及存儲服務器,與所述下載服務器集群通信連接,用于存儲所述下載服務器集群獲得的所述數據信息,并提供所述數據信息的下載。進一步地,還包括:離線任務數據庫,存儲所述離線任務的原始連接,所述下載服務器集群與所述離線任務數據庫通信連接,并從所述離線任務數據庫獲取所述離線任務的原始鏈接,所述下載服務器集群將與下載完成的離線任務對應的數據信息的入口地址寫入所述離線任務數據庫,并生成映射記錄;及離線任務管理器,與所述離線任務數據庫及所述分發服務器通信連接,所述離線任務管理器通過所述映射記錄判斷所述離線任務是否下載完成,若是,則直接提供所述數據信息,否則,為所述離線任務生成唯一編號,且將其原始鏈接連同所述編號寫入所述離線任務數據庫,并將所述離線任務提交給所述分發服務器。進一步地,所述下載服務器根據下載協議分為相應類型,所述分發服務器包括任務分類模塊,所述任務分類模塊將所述離線任務根據下載協議分發給對應類型的所述下載服務器。進一步地,所述分發服務器包括過濾模塊,所述過濾模塊將所述離線任務與已經存在的離線任務進行比較,將已經存在的所述離線任務過濾。進一步地,所述分發服務器包括:負載調度模塊,接收所述負載信息,并根據所述負載信息生成調度規則,所述負載調度模塊維護包含所述下載服務器的信息的鏈表及所述調度規則;及任務分發模塊,根據所述調度規則及所述鏈表中的信息,將所述離線任務分發給所述下載服務器。進一步地,所述負載信息包括CPU負載、磁盤負載、內存負載、并行隊列長度及等待隊列長度,所述調度規則為與所述下載服務器的實時負載成反比例分配所述離線任務,所述實時負載如下式:F=a*CPU負載+b*磁盤負載+c*內存負載+d*并行隊列長度+e*等待隊列長度其中,a、b、c、d、e為0-1之間的權重參數,F表示所述實時負載。進一步地,還包括統計服務器,所述統計服務器獲得下載所述離線任務的下載參數,并根據所述下載參數生成流水日志。本專利技術還提供一種離線下載的方法,該方法包括以下步驟:下載服務器根據其負載反饋負載信息;獲取離線任務;根據所述下載服務器的所述負載信息生成調度規則,并根據所述調度規則分發所述離線任務;根據所述離線任務從互聯網中獲取數據信息,并進行存儲;提供所述離線任務對應的所述數據信息,完成離線下載。進一步地,所述根據所述離線任務從互聯網中獲取數據信息,并進行存儲的步驟包括:獲取所述離線任務的原始鏈接,根據所述原始鏈接獲取所述數據信息;同步存儲所述數據信息,記錄所述數據信息存儲的入口地址,并生成映射記錄。進一步地,在所述根據下載服務器的負載信息生成調度規則,并根據所述調度規則分發所述離線任務的步驟中,包括根據下載協議將所述離線任務分發給相應類型的所述下載服務器的步驟。進一步地,所述根據下載服務器的負載信息生成調度規則,并根據所述調度規則分發所述離線任務的步驟包括:將所述離線任務與已經存在的離線任務進行比較,將已經存在的所述離線任務過濾。進一步地,所述根據下載服務器的負載信息生成調度規則,并根據所述調度規則分發所述離線任務的步驟包括:接收所述負載信息,并根據所述負載信息生成調度規則,維護包含所述下載服務器的信息的鏈表及所述調度規則;及根據所述調度規則及所述鏈表中的信息,將所述離線任務分發給所述下載服務器。進一步地,所述負載信息包括CPU負載、磁盤負載、內存負載、并行隊列長度及等待隊列長度,所述調度規則為與所述下載服務器的實時負載成反比例分配所述離線任務,所述實時負載如下式:F=a*CPU負載+b*磁盤負載+c*內存負載+d*并行隊列長度+e*等待隊列長度其中,a、b、c、d、e為0-1之間的權重參數,F表示所述實時負載。進一步地,在所述提供所述離線任務對應的所述數據信息,完成離線下載的步驟之后,還包括獲得下載所述離線任務的下載參數,并根據所述下載參數生成流水日志。上述離線下載的系統包括分發服務器,下載服務器將其負載信息實時反饋給所述分發服務器,所述分發服務器根據下載服務器的實際負載信息生成調度規則,并根據所述調度規則對離線任務進行分配。對于負載程度高的所述下載服務器,只分發少量或是不分發任務,而對于負載程度低的所述下載服務器,則相應的多分發任務。因此,所述下載服務器所分發到的任務與其實時負本文檔來自技高網
    ...
    離線下載的系統及方法

    【技術保護點】
    一種離線下載的系統,其特征在于,包括:下載服務器集群,所述下載服務器集群包括兩個以上下載服務器,所述下載服務器根據其負載反饋負載信息及根據離線任務從互聯網中獲取數據信息;分發服務器,獲得所述離線任務,所述分發服務器與所述下載服務器集群通信,接收所述負載信息并根據所述負載信息生成調度規則,所述分發服務器根據所述調度規則將所述離線任務分發給所述下載服務器;及存儲服務器,與所述下載服務器集群通信連接,用于存儲所述下載服務器集群獲得的所述數據信息,并提供所述數據信息的下載。

    【技術特征摘要】
    1.一種離線下載的系統,其特征在于,包括:下載服務器集群,所述下載服務器集群包括兩個以上下載服務器,所述下載服務器根據其負載反饋負載信息及根據離線任務從互聯網中獲取數據信息;分發服務器,獲得所述離線任務,所述分發服務器與所述下載服務器集群通信,接收所述負載信息并根據所述負載信息生成調度規則,所述分發服務器根據所述調度規則將所述離線任務分發給所述下載服務器;及存儲服務器,與所述下載服務器集群通信連接,用于存儲所述下載服務器集群獲得的所述數據信息,并提供所述數據信息的下載;所述調度規則包括:基于Hash號段,按照下載服務器的能力比率進行調度,在下載服務器的分配比率設置為0時,不再調度任務到該下載服務器進行下載;所述分發服務器包括:過濾模塊,將所述離線任務與已經存在的離線任務進行比較,將已經存在的所述離線任務過濾,同一個離線任務只向下載服務器集群發送一次離線任務下載請求,同一個離線任務只發送給一個下載服務器;負載調度模塊,接收所述負載信息,并根據所述負載信息生成調度規則,所述負載調度模塊維護包含所述下載服務器的信息的鏈表及所述調度規則;及任務分發模塊,根據所述調度規則及所述鏈表中的信息,將所述離線任務分發給所述下載服務器;所述負載調度模塊管理下載服務器的心跳、注銷及接收下載服務器的負載信息,接收到心跳包時,查詢是否有下載服務器信息,若沒有則新插入一個下載服務器信息,并比較新的負載信息是否與原來的負載信息不同,若不同則置標記,并使用雙緩沖區的實現方式把下載服務器的信息傳給任務分發模塊,當負載調度模塊把數據寫入第一塊緩沖區時,任務分發模塊讀第二塊緩沖區的數據,當負載調度模塊寫完后,任務分發模塊開始讀第一塊緩沖區的數據,負載調度模塊轉而把數據寫入第二塊緩沖區;所述負載調度模塊在更新時,將下載服務器信息集合中所有數據寫入緩沖區中,并在緩沖區中置標記來通知任務分發模塊讀取數據,所述更新的時機包括:下載服務器的負載信息出現過載信息、下載服務器注銷、以及清理完心跳包超時的下載服務器后進行檢查的檢查結果需要更新。2.如權利要求1所述的離線下載的系統,其特征在于,還包括:離線任務數據庫,存儲所述離線任務的原始連接,所述下載服務器集群與所述離線任務數據庫通信連接,并從所述離線任務數據庫獲取所述離線任務的原始鏈接,所述下載服務器集群將與下載完成的離線任務對應的數據信息的入口地址寫入所述離線任務數據庫,并生成映射記錄;及離線任務管理器,與所述離線任務數據庫及所述分發服務器通信連接,所述離線任務管理器通過所述映射記錄判斷所述離線任務是否下載完成,若是,則直接提供所述數據信息,否則,為所述離線任務生成唯一編號,且將其原始鏈接連同所述編號寫入所述離線任務數據庫,并將所述離線任務提交給所述分發服務器。3.如權利要求1所述的離線下載的系統,其特征在于,所述下載服務器根據下載協議分為相應類型,所述分發服務器包括任務分類模塊,所述任務分類模塊將所述離線任務根據下載協議分發給對應類型的所述下載服務器。4.如權利要求1所述的離線下載的系統,其特征在于,所述負載信息包括CPU負載、磁盤負載、內存負載、并行隊列長度及等待隊列長度,所述調度規則為與所述下載服務器的實時負載成反比例分配所述離線任務,所述實時負載如下式:F=a*CPU負載+b*磁盤負載+c*內存負載+d...

    【專利技術屬性】
    技術研發人員:劉剛莊慶
    申請(專利權)人:深圳市騰訊計算機系統有限公司
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 无码永久免费AV网站| 国产精品久久无码一区二区三区网| 精品无码中出一区二区| 免费无码又爽又刺激高潮| 亚洲av无码成人精品区在线播放| 亚洲AV人无码综合在线观看 | 无码夜色一区二区三区| 东京热人妻无码人av| 亚洲AV无码AV吞精久久| 无码人妻视频一区二区三区| 影院无码人妻精品一区二区| 亚洲色在线无码国产精品不卡| 成人无码WWW免费视频| 日韩电影无码A不卡| 亚洲av日韩av永久无码电影| 日韩AV无码久久一区二区| YY111111少妇无码理论片| 亚洲AV无码AV日韩AV网站| 久久人妻无码中文字幕| 无码狠狠躁久久久久久久| 久久成人无码国产免费播放| 亚洲精品无码99在线观看 | 亚洲午夜无码毛片av久久京东热| 一本加勒比HEZYO无码资源网 | 无码专区6080yy国产电影| 精品国产a∨无码一区二区三区| 亚洲人成影院在线无码按摩店| 亚洲成av人片不卡无码久久| 无码国模国产在线观看免费| 国产精品无码aⅴ嫩草| av色欲无码人妻中文字幕| 久久AV无码精品人妻出轨| 精品久久久久久久无码久中文字幕| 亚洲综合无码一区二区痴汉| 亚洲中文久久精品无码1| 精品人妻系列无码天堂| 亚洲精品天堂无码中文字幕 | 无码中文字幕日韩专区| 国产成人亚洲综合无码精品 | 丰满熟妇人妻Av无码区| 久久久久琪琪去精品色无码|