[發明專利]一種采用本地緩存策略實現文件下載的系統及方法在審
| 申請號: | 201811622846.3 | 申請日: | 2018-12-28 |
| 公開(公告)號: | CN109729165A | 公開(公告)日: | 2019-05-07 |
| 發明(設計)人: | 陳德淼;季統凱 | 申請(專利權)人: | 國云科技股份有限公司 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08 |
| 代理公司: | 廣東莞信律師事務所 44332 | 代理人: | 陳熙 |
| 地址: | 523808 廣東省東莞市松山湖高*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 類組件 緩存 下載 通用框架 緩存策略 實現文件 網絡文件 包含文件 隊列管理 非法字符 基本操作 請求管理 刪除文件 下載參數 下載文件 時間戳 去除 并發 網絡 | ||
1.一種采用本地緩存策略實現文件下載的系統,其特征在于:所述的系統包括通用框架類組件、常用工具類組件、file工具類組件、下載工具類組件;
所述的通用框架類組件實現通用框架的基本操作,判斷是否包含文件、是否有網絡;
所述的開常用工具類組件實現比較兩個版本大小,得到一個path的去除了非法字符、可以用來本地緩存的key,將url后面加上隨機的key后,用來去除緩存;
所述的file工具類組件實現刪除文件;
所述的下載工具類組件實現:本地緩存下載文件,增加存儲器,增加每一個本地緩存的有效時間戳,自定義設置方法,根據不同需求對參數進行修改,采用下載隊列進行下載管理,增加最大并發請求數防止一次性請求過多損耗性能。
2.一種權利要求1所述系統的方法,其特征在于:
所述的方法包括:
設置下載參數;
通過本地緩存方法下載網絡文件;
所述的通過本地緩存方法下載網絡文件具體包括:
S01、判斷需不需要將路徑進行編碼,如果是中文路徑對其進行編碼;否則執行下一步;
S02、判斷緩存是否過期;如未過期,則執行下一步;如果過期,則跳轉到從網絡獲?。?/p>
S03、檢查文件是否已存在,如果存在則直接回調本地路徑、采取本地文件,否則重新獲?。?/p>
S04、從網絡獲取,開啟從網絡下載流程。
3.根據權利要求2所述的方法,其特征在于:
所述的設置下載參數具體包括以下設置:
將默認的下載緩存目錄存到應用的downloads/downloadFiles下;
本地緩存的時間戳,以毫秒為單位,默認為1小時;
同時最多的downloader并發下載數目,默認為5個;
超時請求時間;
超時請求后的重試次數;
單個下載任務最大的請求時間,以毫秒為單位,默認30秒;
獲取相對路徑的函數;
監聽進度的步長。
4.根據權利要求2所述的方法,其特征在于:
所述的開啟從網絡下載流程具體包括:準備網絡下載和通過網絡下載;
所述的準備網絡下載是:首先添加進入緩存池中;如果已經存在該條緩存池,代表這條資源已經進行請求了,只需要填進響應池即可;如果不存緩存池,則新建緩存池;如果網絡狀態能用,進入通過網絡下載流程;
所述的通過網絡下載包括:創建下載任務、添加進度監聽器、啟動下載任務、執行并發下載任務。
5.根據權利要求4所述的方法,其特征在于:
所述的創建下載任務是當任務下載成功時,傳入相對路徑,供下載成功提示緩存及展示;當任務下載失敗時,刪除本地臨時文件;下載完成,當前任務數減1,并重新檢查下載隊列,從當前下載隊列中去除;
所述的添加進度監聽器是指監聽下載進度的步長;當監聽步長為1時,顯示為“開始下載”;當監聽步長為2時,顯示為“己連接到服務器”;當監聽進度為3時,顯示為“下載中”,進度每隔一定比度顯示一次;當監聽步長為4時,顯示“下載完成”;
所述的執行并發下載任務通過隊列循環進行,如果判斷當前下載任務已經超時,并且沒有自動觸發回調,則終止任務下載,從當前任務隊列中刪除,觸發錯誤回調;對存在超時的任務,手動剔除;如果當前下載任務小于并發下載數時,開啟下一個任務,當前任務數累加。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于國云科技股份有限公司,未經國云科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811622846.3/1.html,轉載請聲明來源鉆瓜專利網。





