Fetch the repository succeeded.
本项目主要是通过Java实现了大文件的多线程下载,以及突破云盘限速
对应小文件下载,可以先下载到内存,然后在输出到文件中
FileDownloader fileDownloader = new FileDownloader();
String fileURL = "http://img.doutula.com/production/uploads/image/2017/10/19/20171019627498_uQtkcl.jpg";
fileDownloader.downloadToMemory(fileURL, "/Users/huaan9527/Desktop/71019627498_uQtkcl.jpg");
FileDownloader fileDownloader = new FileDownloader();
String fileURL = "http://img.doutula.com/production/uploads/image/2017/10/19/20171019627498_uQtkcl.jpg";
fileDownloader.downloadFile(fileURL, "/Users/huaan9527/Desktop/71019627498_uQtkcl.jpg");
FileDownloader fileDownloader = new FileDownloader();
String fileURL = "http://img.doutula.com/production/uploads/image/2017/10/19/20171019627498_uQtkcl.jpg";
fileDownloader.multiThreadDownload(fileURL, "/Users/huaan9527/Desktop/71019627498_uQtkcl.jpg");
测试百度云下载的文件 46M,自己本地最大下载速度 2M
总耗时: 603s
云盘单线程下载限速100kb,为了充分的压榨网速,所以做了不同线程的测试速度
线程数 | 下载总耗时 |
---|---|
10 | 60s |
20 | 30s |
30 | 21s |
40 | 15s |
50 | 13s |
由于自己的最大下载速度是 2M,所以线程数设置在30个下载速度比较合适
注意:从浏览器中获取的云盘下载地址需要使用 URLDecode 解码,并且下载链接有时效性
本项目纯粹用于学习
基于此项目开发了IDEA插件
喜欢的朋友不要忘记star哟
如果您认为此项目帮到了您的开发工作,您可以捐赠我一杯可乐(相信这比打赏主播更有意义)。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
Activity
Community
Health
Trend
Influence
:Code submit frequency
:React/respond to issue & PR etc.
:Well-balanced team members and collaboration
:Recent popularity of project
:Star counts, download counts etc.