p2p項目夭折,有種蛋蛋的憂傷。。

在高考完的暑假就在跟杰哥讨论怎样实现的校内p2p文件共享,就在今天。我们无奈的宣布差点儿夭折。

上图是測试图。

那时候的思路已经完好。就是:“学生上传共享文件到咱们工作室的server。server生成种子链接。用户使用软件进行下载。下载的时候优先搜索学校局域网内的电脑。检索相应文件”,我还具体写了Project分析。

可是由于仅仅有我一人写这软件,网络编程接触又不深。所以未能下定决心开干。

直到清明前。趁着有个软件设计大赛,我们两个便一口气报名參加并做p2p。

之后跟承天聊的时候,他也參加到我们来。

然后。我们3个就雄心勃勃的打算在20天内搞出来。我认为我们是非常好的合作团队,杰哥搞php后台。我和承天写软件。

途中遇到的一些技术问题。经过讨论和分析。都想到比較好的解决方法,除了穿透还有一层wifi内网那个还想不到好方法(我写过的文章:两个独立局域网的交流问题http: //blog.csdn.net/christopherwu/article/details/23714247)

上传文件仅仅是上传文件文件夹信息还有MD5,推断文件是否反复同样利用MD5.大文件利用中间10m来算出MD5.

还有,举出特别的样例:

1、A要下载Z文件。B,C,D多处有这个文件,将这文件固定分块。然后B负责发送1,C负责2,D负责3。保留max_number。当某人发送完,比方C。max_number+1返回给他。然后他继续max_number+1*block_size发送。

2、当仅仅有A有文件(如最新的电影),一下子有100以上的人到他那下载。须要,A把1给B,把2给C,B再把1转发给C。D,这样1传2,2传4

1我们都已经写了代码实现了。 。 。 。

我们还考虑到了,当某个时候,比方深夜,没有peer开着的时候。或者冷门资源,肯定须要备份资源。一開始打算初步上传不仅上传文件夹信息到server,还有文件在后台上传到server备份,再在某段时间删除超热门资源(冷门资源才须要备份)。

后来改成利用网盘Api,上传到网盘里,用php做成注冊验证开网盘。防止网盘像115那样夭折。我们还打算弄两个不同的网盘来备份。

还实用户积分制。鼓舞上传。下载加速;宿舍楼展示图,鼓舞交友。

迫使我们夭折的原因是:

1、没办法做到真正p2p,不是技术上的问题。而是用户。首先学校的用户少;其次。在资源上,除了游戏这些是长时间保留的,其它的差点儿用完就删除(比方电影)。这样子差点儿做不到p2p。什么是P2P精神?人人为我,我为人人!在P2P下载方式下,每一个用户既是下载者,也是上传者。这个才是最困难的地方。

2、上传目录。能够做到这个。可是文件大小,备份资源,目录反复性这3方面差点儿是解决不了的。可是,做成仅仅能上传文件,用户把文件压缩上传后就会删除源文件,这样又无法p2p了。 。

这样子,差点儿又变成了仅仅有一个源提供资源,丧失p2p的优势了。

这是深入项目后才发现的问题,好无奈。眼下还想不到好办法。好无奈啊!好不甘心。

我们都是按自己的想法来设计实现p2p的。最后却这样结束。

之前我们工作室有类似的资源共享(是用ftp下载形式),可是server硬盘坏了好几个。负责上传的那几个拥有特别帐号的人管不了,最主要是server全然死掉了。

我们才做p2p的。

////////////////////////////////////////////////////////////////////////////////////////////////////////////

我原來還打算用p2p的軟件來重振校內軟件的雄風,但是,這個夭折,讓我對學校內軟件應用無望了。。

軟件能做的移動應用和網頁幾乎都能做。并且更便捷做得更吊

时间: 2024-10-11 10:38:56

p2p項目夭折,有種蛋蛋的憂傷。。的相关文章

微信小程序內測一個多月,項目師說它是個封鎖生態

小程序,最終就是 1M 以內的微信行使.從 9 月 21 日微信對外內測小程序起 ,重慶.佛山每到了星期六日都有一到兩場線下運動.當中多數都new balance得交上兩三百的入場門票費.這些拿到內測的項目師刻畫了一個和微信相同封鎖的小程序生態.就算一個多月以來,"程序員交友居住區"Github 上業已 有了不少小程序的發展用具 .但和蘋果行使商店的生意相同,小程序也有一套統統個人掌管的發展語言和發展用具.在一場發展者運動現場,居家B2B使用"匠物"的後端項目師趙啟

「Ionic」創建新項目

1.創建新項目 创建一个名为myApp的还有tabs的项目(ionic start <project-name> <optional-template>) 可选模板为sidemenu 侧滑.tabs 底部tab切换.blank 空白): libotaodeMacBook-Pro:~ libotao$ cd /Users/libotao/WorkSpaces/Ionic libotaodeMacBook-Pro:Ionic libotao$ ionic start myApp tab

ionic3 环境配置 + 運行第一個項目

1.首先我們先下載個 nodejs安裝包 地址:https://nodejs.org/en/ 安裝 檢查是否安裝成功,打開命令提示符 輸入 node -v 回車 查看版本 結果: 2.安裝ionic 輸入以下命令 然後回車 npm i -g ionic 如果你要安裝某個特定版本的就輸入 npm i -g [email protected]版本号 安装某個版本的ionic 結果: 3.安裝cordova 命令提示符輸入以下 回車 安裝cordova npm install -g cordova 如

MVC+Ninject+三层架构+代码生成 -- 总结(二、建項目)

1.項目分層,其中SqlSugar 是一個ORM 庫類. 2.VS庫類 視圖.

Xcode6.1中添加空項目模板

不知道蘋果到底怎麼想的,在Xcode6的正式版中去除了iOS開發的空項目模板(Empty Application Template),我用的Xcode6.1自然更不用說了. 現提供Xcode5.1.1官方鏡像的iOS開發空項目模板.將壓縮包解壓,將「Empty Application.xctemplate」複製到Xcode6.1的模板路徑下即可. Xcode6.1的iOS開發模板路徑:「/Applications/Xcode.app/Contents/Developer/Platforms/iP

「量化風投」:用數據挖掘潛在項目

形勢變遷:創業者有了更多話語權曾就職於風投機構GeneralCatalyst和BessemerVenturePartners的克里斯·法爾莫(ChrisFarmer)指出,風投行業曾經是個封閉的圈子,只有少數基金能接觸到谷歌.Facebook這種企業.法爾莫正在籌建一家基於數據的新基金並計劃於明年初開始融資,該基金能以智能化方式向投資人提供來自CrunchBase.社交媒體.網頁計量和多個獨家數據來源的大量信息,從而幫助投資人判斷最佳投資機會.法爾莫解釋了如今的形勢變化:在過去,風投機構可以憑藉

如何来展开項目

第一步,需要需求收集,功能分析,讨论决议第二步,需要根具需求情况, 确定技术平台 和 IT环境及架构. 比如 是否需要组建自己的数据中心,还是普普通通的自己建一个机房拉个专线, 或者直接托管台主机就可以了. 然后这就会涉及到IT组织机构如何等等.说到这,老总就问,那觉得要怎么做,因为我们不懂. 我说这个要看需求, 量. 问到什么量呢, 我说到规模,客户,访问,数据等等的一个规划.因为您给了我个比较概括的问题,我也只有概括性的描述.然后就继续往下说,  第三步,文档化第二步, 制定较为详细的计划书

實驗項目wordcount

wordcount 1.设计思路 2.实验代码 GitHub地址: 评论博客地址: 董欣 董雅洁 冯子旋 學習進度和總結 本学期课程即将结束,请总结下你本课程的收获,回顾第0次作业,你是否实现了你的目标? 你对目前的上课和作业方式(上课讲解+PTA+博客)有何意见和建议? 终于我们即将不再是师生.当你结束本课程,你和我就站在同样的位置上,我将不再基于学校授权和知识.经验 (年龄?)上的优势而对你的自由有任何干扰.除发布成绩以外,我最后一次行使教师特权: 请问你有什么要对教师 (我)说的,建议.抱

IDEA項目配置404

本人使用的版本是 Intellij IDEA 2017.1 最近刚学习使用 Intellij IDEA 开发项目,就遇到了坑爹的问题,部署一个简单的 ssh 项目,tomcat启动正常,没有任何报错,就是打不开项目,一直报404,错误如下图: 控制台输出: D:\apache-tomcat-7.0.57\bin\catalina.bat run [2017-05-19 12:18:47,831] Artifact SSHDemo:war exploded: Server is not conne