[發明專利]文件下載方法、裝置和電子設備有效
| 申請號: | 201811485128.6 | 申請日: | 2018-12-06 |
| 公開(公告)號: | CN109862065B | 公開(公告)日: | 2021-09-14 |
| 發明(設計)人: | 許鵬展 | 申請(專利權)人: | 北京字節跳動網絡技術有限公司 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08 |
| 代理公司: | 泰和泰律師事務所 51219 | 代理人: | 祝海燕 |
| 地址: | 100041 北京市石景山區*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 文件 下載 方法 裝置 電子設備 | ||
1.一種文件下載方法,其特征在于,所述方法包括:
響應于接收到用戶發出的對目標文件的下載指令,確定對目標文件進行下載的下載任務是否已在下載任務列表中;
響應于確定對目標文件進行的下載任務不在下載任務列表中,獲取所述目標文件的大?。?/p>
確定所使用的下載網絡的當前網絡速度,所述網絡速度由如下方式確定:在多個采樣時間點采集網速采樣值序列,確定當前網速移動平均值,將網速移動平均值確定為當前網絡速度;
根據所述當前網絡速度以及所述目標文件的大小對所述目標文件進行分塊,得到至少一個待下載分塊文件,包括:根據預設分塊策略確定所述目標文件的第一分塊數量;基于預設分塊調整策略根據當前網絡速度對第一分塊數量進行調整,得到第二分塊數量;根據所述第二分塊數量對所述目標文件進行分塊,得到至少一個待下載分塊文件;
對多個待下載分塊文件同時執行下載操作;其中,所述對多個待下載分塊文件同時執行下載操作,包括:
創建與多個待下載分塊文件各自對應的分塊下載線程,以使多個分塊下載線程同時執行下載各自對應的待下載分塊文件的下載操作;以及所述方法還包括:
響應于至少一個分塊下載線程完成了下載所對應的待下載分塊文件的下載任務,確定是否存在所對應的待下載任務的未完成部分大于預設任務閾值的線程;
響應于確定存在所對應的待下載任務的未完成部分大于預設任務閾值的線程,將該線程確定為目標下載線程,并確定所述未完成部分對應的至少一個分塊子任務;
利用所述目標下載線程以及完成了下載所對應的待下載分塊文件的分塊下載線程下載所述至少一個分塊子任務。
2.根據權利要求1所述的方法,其特征在于,所述響應于確定對目標文件進行的下載任務不在下載任務列表中,獲取所述目標文件大小,包括:
向服務器發起用于獲取所述目標文件大小的連接請求;
接收服務器發送的基于所述連接請求返回的指示目標文件大小的信息,并基于所述信息確定目標文件的大小。
3.根據權利要求2所述的方法,其特征在于,所述創建與多個待下載分塊文件各自對應的分塊下載子線程,以使多個分塊下載子線程同時執行下載各自對應的待下載分塊文件的下載操作,包括:
第一個待下載分塊文件所對應的分塊下載線程復用上述連接請求所使用的連接。
4.根據權利要求1-3任一項所述的方法,其特征在于,所述方法還包括:
響應于確定對目標文件進行的下載任務在所述下載任務列表中,獲取本地緩存的、預先對該目標文件進行分塊得到的至少一個待下載分塊文件的下載狀態信息;
對于每一待下載分塊文件,基于該待下載分塊文件的下載狀態信息對應的下載偏移值,繼續下載該待下載分塊文件對應的數據;其中
每一待下載分塊文件的下載狀態信息包括:該待下載分塊文件的首字節、末字節各自對應的相對于所述目標文件的初始字節的起始偏移值、結束偏移值,以及該待下載分塊文件對應的字節長度以及下載偏移值,所述下載偏移值用于指示該待下載分塊文件對應的已下載的字節數。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京字節跳動網絡技術有限公司,未經北京字節跳動網絡技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811485128.6/1.html,轉載請聲明來源鉆瓜專利網。





