百度网盘的离线秒杀如何实现(核心问题是如何获取链接的MD5值)

问题描述

我做了一个类似百度网盘功能的私人网盘,单纯是玩玩的,已经实现了文件的秒传,现在增加了一个离线下载的功能。虽然功能上模拟出了一半,但是唯一的问题就是,百度网盘的离线下载是可以秒杀的,但是我的网盘做不了。因为找了很久也找不到不下载文件就可以获得文件MD5值的方法。我的思路是,如果可以从链接就可以获得MD5值的话,那我可以和我数据库里面已存的文件进行对比,有的话就不用下载,没有的话再下载。但是现在获取不了(又或者说我不会获取),硬要实现的话只能下载好文件,计算出MD5值,再对比,有相同的,删除下载的文件,没相同的再写入数据库。这种方法只能节约了服务器的硬盘,时间和带宽都会浪费了。有没有什么方法可以不下载文件就知道文件的MD5值?如果有的话要怎样实现?如果我的思路是错的话,那么百度或者迅雷这些的离线下载秒杀是如何实现的?

解决方案

解决方案二:
MARK等待大神!
解决方案三:
弱弱的问下,文件秒传是怎么个思路法?
解决方案四:
引用2楼subxli的回复:

弱弱的问下,文件秒传是怎么个思路法?

比较文件hash值
解决方案五:
引用2楼subxli的回复:

弱弱的问下,文件秒传是怎么个思路法?

服务器上同样hash值的文件只保存一份,上传只是得到了对这个文件的访问权
解决方案六:
我猜一是根据URL,二是文件尺寸,三是多段少量文件数据另BT种子和ED2K链接自身就带有hash
解决方案七:
1.文件大小3.取头1K的数据的md5就可以了
解决方案八:
人家访问量那么大。服务器存的文件,很多人共享一个。比如一个热门电影,20万人要离线下载,服务器仅仅下载一份,其他人下载都是虚拟“下载”。你怎么说是浪费硬盘盒空间?其他人下载的时候简单比较url就行了,如果不是http的话更好了,url直接就提供有md5了。网盘难点是大数据,高负载,高可扩展。
解决方案九:
引用6楼wyd1520的回复:

1.文件大小3.取头1K的数据的md5就可以了

这个有点不太精准吧?比如一个文本文件,如果修改替换了几个标点或几个字符,那么他的大小不会变,而替换的标点或字符也可能不在前1K数据之内,所以求得的md5值还是一样的,但其实文件显然不同
解决方案十:
引用8楼webdiyer的回复:

Quote: 引用6楼wyd1520的回复:
1.文件大小3.取头1K的数据的md5就可以了

这个有点不太精准吧?比如一个文本文件,如果修改替换了几个标点或几个字符,那么他的大小不会变,而替换的标点或字符也可能不在前1K数据之内,所以求得的md5值还是一样的,但其实文件显然不同

忘了加URL了。
解决方案十一:
引用9楼wyd1520的回复:

忘了加URL了。

加上url也不行,很多下载网站文件更新后,url是不变的
解决方案十二:
md5的值直接用作文件名应该是没问题的吧
解决方案十三:
引用4楼KarasCanvas的回复:

Quote: 引用2楼subxli的回复:
弱弱的问下,文件秒传是怎么个思路法?

服务器上同样hash值的文件只保存一份,上传只是得到了对这个文件的访问权

学习了。
解决方案十四:
虽然我也是不是很了解,但是我思考过这个问题,推荐楼主去了解一下在开始下载一个文件之前,请求和返回的过程各自做了些什么事情取得了什么东西,个人猜测可能会有一点发现
解决方案十五:
引用8楼webdiyer的回复:

这个有点不太精准吧?比如一个文本文件,如果修改替换了几个标点或几个字符,那么他的大小不会变,而替换的标点或字符也可能不在前1K数据之内,所以求得的md5值还是一样的,但其实文件显然不同

像httpheader里的last-modified,etag都可以作为参考,你要告诉我一个假的就没办法了
解决方案:
http的话主要是靠url和文件大小,来判断伪造hash百度网盘的秒传是会出错的
解决方案:
引用11楼liuchaolin的回复:

md5的值直接用作文件名应该是没问题的吧

可以。不过不要叫“文件名”,叫“文件ID”更好。
解决方案:
要秒杀文件只存了一份,但是这份文件对应的链接(http://...)可以有成百上千个迅雷的数据库里面存了非常多的链接,只要被请求过一次就会被存下来,等下一次有新用户请求相同的链接时,就可以显示被秒杀了,如果说不下载就知道MD5的值的话是不可能的。MD5本身就是一种摘要算法,没有下载,怎么摘。迅雷这牛,其实关键是它的链接数据库。
解决方案:
楼主能不能分享一下你的私人网盘实现的代码呀,万分感谢!!

时间: 2024-07-28 20:51:48

百度网盘的离线秒杀如何实现(核心问题是如何获取链接的MD5值)的相关文章

百度网盘多客户端跨平台管理

存储的载体在短短的十年间发生了巨大的改变.移动存储从最初的5英寸.3.5英寸磁盘:到后来的U盘.存储卡,以及如今的1T甚至更高存储空间的移动硬盘:而网络存储的改变甚至更大.记得我大约2000年左右刚接触互联网时,网络存储多为免费邮箱,以附件的形式保存:后来还用过一段时间的QQ网络存储,但以上几乎都是小容量的暂时存储,当面临大文件需要存储时,在若干年前,往往面临着以下几个问题:1.找不到如此大的网络存储空间.2.网速限制了文件上传下载的速度.但随着存储成本的降低,网络带宽的不断提高,让大容量的网络

百度网盘“离线下载”功能,省时省力不惧断网断电

[文章摘要]网络资源丰富多彩,但想将它们搬回家绝非易事,如果下载中突然断网.断电,就很可能前功尽弃.最近,百度云存储服务产品"百度网盘"闪亮登场,独创"离线下载"功能,只需添加资源链接,创建离线任务,即使断网.断电也能将自己心仪的资源完好无损地下载到百度网盘中. 网络资源丰富多彩,但想将它们搬回家绝非易事,如果下载中突然断网.断电,就很可能前功尽弃.最近,百度云存储服务产品"百度网盘"闪亮登场,独创"离线下载"功能,只需添加资

百度网盘全平台评测:实时预览+离线下载

云存储带给我们的两大好处,一是再也不用拿着U盘在各个电脑之间将工作文档拷来拷去,麻烦不说还容易传染病毒,用网盘工具往自己的免费空间一丢,所有支持的平台都能见到它的踪影;第二就是,不管泰国再发多大洪水,硬盘多缺货,我们也都有能够暂时保存资料的一亩三分地儿,而且还不收钱~~ 近来百度和谷歌接连的都推出了自己的网盘服务,进军云存储领域,搜索巨头带给我们的云存储能有什么整合自己看家本事.或者实惠更多的服务呢?今天我们就先来拿刚刚在百度开发者大会上推出.并且还在邀请测试阶段的百度网盘来看个究竟. 无上限的

百度网盘评测

最近115已经开始限速,于是有了找新网盘的打算,于是开始留意上了百度网盘.该网盘目前处于公测期,需要早10--晚10的整点抢号才能参与公测,不多说,各位看官往下看. 离线下载测试3大网站,5个链接,不下20次尝试,均不理想,仅一次1.1M的文件正常下载到了网盘中,而且还不支持目前很常见的跳转链接,致使大量普通下载并不能正常下载,提示无效链接,囧rz...这测试结果让人汗颜. 很显然,网盘并没有成熟,特别是上传速度上,相当不理想,除了这个,其他方面都不错,尤其是加密分享,可以从邮箱和短信的链接和分

360云盘数据怎么迁移到百度网盘

  360云盘数据怎么迁移到百度网盘 1.首先选中你要离线到百度云的文件,右击或上面工具里选择分享文件,弹出一个分享链接,再单击复制链接字样,就将这个链接复制下来了. 2.新建一个浏览器标签,在浏览器地址栏粘贴并打开刚才复制的地址.这是个短链接,不同于前面复制的下载链接时大长得一串.就得到下面的下载页面. 3.在这个下载页面单击高速下载,选直接下载,弹出下载链接,从网址后面一长串链接URL,复制它 4.到百度云里,打开离线下载,新建普通任务,将刚才的地址粘贴进去,开始离线 5.离线速度还是很快的

百度网盘始终处于“一码难求”的境地

中新网5月7日电 百度网盘自小范围邀请公测以来,始终处于"一码难求"的境地.如今,这种情况将得到缓解.记者获悉,今日百度网盘开放了用户好友邀请码,如此一来更多的网友将能享受到拥有"大.快.安全永固.免费"等四大特点的百度云存储服务,可以将手机及电脑中的任何文件备份至云端,真正实现Windows端.Web 端.手机端的跨终端.跨平台数据同步功能. 在今年3月23日的开发者大会上,百度向外界正式推出了百度网盘这一云端存储产品.百度网盘一经推出,就凭借着15G的超大初始空

百度网盘云存储 云端落地临近时

中介交易 SEO诊断 淘宝客 云主机 技术大厅 众所周知,云计算近几年来可谓被各大IT厂商炒作的纷纷扬扬,并且由之前的概念性产品目前已经进展到了实际上的云落地阶段.而作为加快云落地工程催化剂的云存储产品,也已被广大互联网厂商.手机终端商开发且进行了商业运用.当然,作为国内知名互联网巨头企业百度也参与到其中,推出了自己的独特实用性云存储产品---百度网盘. 面对竞争越来越激烈的移动互联网市场,各大互联网厂商.手机终端.平板电脑终端.移动应用终端开发者都想占有自己的一席之地,而移动互联网消费用户则毫

针对百度网盘的客观评测与期待

中介交易 SEO诊断 淘宝客 云主机 技术大厅 最近再做一个戏曲曲艺类MP3资源下载论坛,由于是新站不想花费太多的资金去租服务器以及购买带宽所以采用了网盘的形式.进而对一系列的大众网盘都做了深刻比较.最终选择了百度网盘,现写了这篇文章希望对和我一样不想投资太多,又想为网友提供快速的下载服务的朋友有所帮助. 一.优点 1.容量大 初始空间5G,通过新手任务可以立刻增加2G,通过自动扩容功能可以无限扩容. 2.数据安全,访问速度快 百度是目前国内最大的互联网企业之一,依托百度强大的云存储集群机制,为

诸“云”之战国内已被百度网盘点燃

仅在2011年,全球云存储市场的份额就达到16亿美元之多,而国内的云存储市场更是成长惊人.短短1-2年时间中,就有诸如金山快盘.华为网盘.zsQQ网盘.飞速RayFile.纳米盘.新浪微盘.酷盘.360云盘.电信"e云".盛大网盘,甚至到最近再度高调露相,高喊"好友邀请天天high 免费自动扩容.天天抢iPad"的百度网盘等数十个各种网盘"出生".如此空前盛况背后,究竟隐藏着什么样的市场蓝海?而这一夜之间被点燃的"战火"里,国