搭建内网BT服务器

社会主义新天地 提交于 2020-03-11 06:06:05

我主讲的传智播客.Net就业培训班上课的时候白天老师讲课要实况视频录下来,供同学们晚上、休息日复习用,由于白天讲课要六个小时,因此每天的视频要1个多G,之前一直采用在教室中部署一台FTP服务器的形式供同学们下载,但是一个班60多位学生同时从服务器下载,因此下载速度非常慢。昨天讲课突然想到BT不就是解决这样类似的问题的吗?因为集中从网站下载大文件非常消耗网站服务器、带宽资源,因此很多网站都采用BT种子的形式提供下载,下载者之间互相传递数据,这样就降低了服务器的压力,也提高了下载者的下载速度,哪怕BT种子源Down掉了,网友之间仍然可以互相传递、下载。因此打算把BT方式引入教室局域网

经过查询网上的资料(搜索“搭建BT服务器”),找到了MyBT这款软件,按照它的描述MyBT是搭建BT服务器的,但是安装以后发现它只是提供了一个快速创建BT站点的东西,它的http://****:6969/announce总是连接不上。折腾半天还是不行,因为我的关注点不在创建BT站点上,而是搭建一个Tracker服务器(BT客户端之间一般要通过Tracker服务器来进行信息交换才能知道彼此的存在,因此Tracker服务器是一个非常关键的BT服务器),因此把精力放到了搭建一个Tracker服务器上, 最后找到了windows上可以运行的Tracker服务器软件“BitCometTracker”,这个服务器用法非常简单,运行BitCometTracker.exe后,点击界面上的【Run】按钮即可。因为Tracker服务器上能够“提供”的下载文件信息都是由连接上的BT客户端汇报上去的,因此Tracker服务器也不记录任何的本地数据,因此就不用备份服务器数据。

Tracker服务器运行起来了,下一步就是制作*.BitTorrent种子和选用BT客户端了。这里选用uTorrent,是因为uTorrent带了BitTorrent种子制作器,同时uTorrent的上传速度非常快(测试中平均速度3M/S,而BitComet只有300K/S,迅雷之类的就更不用说了)。

制作种子的步骤:
1、打开utorrent,点击主菜单的【文件】→【制作Torrent】
2、在对话框中点击【添加文件】(如果是发布文件夹就选择【添加目录】),选择要发布的文件。
3、Tracker文本框中输入“http://192.68.43.3:8080/announce”,其中192.68.43.3是Tracker服务器的IP地址,8080是Tracker服务器的端口。(建议选中“开始做种”这样点击【创建并另存为】按钮保存种子文件后就可以立即开始做种了。)
4、点击【创建并另存为】按钮后将生成的种子文件保存到磁盘上,然后将种子文件发给学生即可。
5、学生打开utorrent,点击主菜单的【文件】→【添加Torrent】选择种子文件即可开始下载。


utorrent官方网站上提供的是安装版,下载种子列表等是保存在配置文件中的,而utorrent的配置文件是保存在C:\Documents and Settings\用户名\Application Data\uTorrent(其中“用户名”是当前windows登录用户名,一般是C:\Documents and Settings\Administrator\Application Data\uTorrent)。网上查询资料发现只要把C:\Documents and Settings\Administrator\Application Data\uTorrent下的配置文件拷贝到uTorrent文件夹下,这样uTorrent就变成绿色的了,把文件夹的东西打包给别人用就可以,不用安装。为了防止病毒、恶意软件造成计算机故障,教室里的机器是有还原卡的,每次重启电脑C盘中的数据都会还原为标准配置,之前的文件都会消失,而E、F盘是不还原的,因此用刚才提到的方式把utorrent打包成绿色版,放到E盘或者F盘即可。

由于各种原因(比如配置文件被误删、种子误删、文件误删等)做种会中断,如何重新做种呢?其实只要用uTorrent打开*.BitTorrent文件,下载文件选择磁盘已有的文件,客户端会自动重新用磁盘中的文件做种。

由于教室局域网内部用,因此也不用搭建一个专门的种子发布站点,将种子按日期保存在服务器上,然后写一个html页面,将种子地址按照日期整理到html页面中,然后用CassiniDev(VisualStudio自带的调试用Web服务器)之类迷你的Web服务器将这个目录公布为web页面即可,学生们到这个页面下载种子即可。

如鹏网.Net培训班正在报名,有网络的地方就可以参加如鹏网的学习,学完就能高薪就业,点击此处了解

 

    三年前只要懂“三层架构”就可以说“精通分层架构”;现在则需要懂IOC(AutoFac等)、CodeFirst、lambda、DTO等才值钱;

    三年前只要会SQLServer就可以说自己“精通数据库开发”;现在则需还需要掌握MySQL等开源数据库才能说是“.Net开源”时代的程序员;

    三年前只要会进行用户上传内容的安全性处理即可;现在则需要熟悉云存储、CDN等才能在云计算时代游刃有余;

    三年前只要掌握Lucene.Net就会说自己“熟悉站内搜索引擎开发”;现在大家都用ElasticSearch了,你还用Lucene.Net就太老土了;

    三年前发邮件还是用SmtpClient;现在做大型网站发邮件必须用云邮件引擎;

    三年前缓存就是Context.Cache;现在则是Redis、Memcached的天下;

    如鹏网再次引领.Net社区技术潮流!点击此处了解如鹏网.Net最新课程

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!