首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
favowang
2018-08-21 14:08
已编辑
大连理工 Java
关注
已关注
取消关注
求助:如何把一个文件快速下发到100万个服务器?
求助:如何把一个文件快速下发到100万个服务器?
提示
全部评论
推荐
最新
楼层
wushu
University of New South Wales Java
来来来,大家一起脑洞啊 接2#========================= 作者:TeeKee 链接:https://www.nowcoder.com/discuss/76829?type=0&order=3&pos=19&page=1 来源:牛客网 如果集中式地放在一个服务器或缓存上的话,带宽、连接都会遇到问题。只说idea的话。 树状: 1. 每个服务器既具有文件存储能力也应具有文件分发能力。 2. 每个服务器接收到文件之后向较近的服务器分发,具体类似多叉树,应该挺快的。 索引状: 1. 设置1000个缓存服务器,文件先下发到这些缓存上。(具体多少缓存、分几层缓存和具体业务有关。) 2. 每个缓存服务器接收1000个服务器取文件。 ================================= A.对于树状传递,在100W台服务器这种量级上,可能存在两个问题 1.如果树上的某一个节点坏掉了,那么从这个节点往下的所有服务器全部宕机。 2.如果树中的某条路径,传递时间太长了(网络中,两个节点间的传递速度受很多因素的影响,可能相差成百上千倍),使得传递效率退化。 改进: 100W台服务器相当于有100W个节点的连通图。那么我们可以在图里生成多颗不同的生成树,在进行数据下发时,同时按照多颗不同的树去传递数据。这样就可以避免某个中间节点宕机,影响到后续的节点。同时这种传递方法实际上是一种依据时间的广度优先遍历,可以避免某条路径过长造成的效率低下。 B.最简洁省事的方法,组播!(类似索引式)。都有100W台服务器了,自己搞个组播网络不就好了,标准的TCP/IP协议啊。
点赞
回复
分享
发布于 2018-04-22 14:25
yluo
西安电子科技大学 Java
串成一条链吧 第一个发给第二个 第二个发给第三个以此类推 可以同时发的
点赞
回复
分享
发布于 2018-04-22 13:08
TeeKee
阿里云_基础产品事业部_高级开发工程师
如果集中式地放在一个服务器或缓存上的话,带宽、连接都会遇到问题。只说idea的话。 树状: 1. 每个服务器既具有文件存储能力也应具有文件分发能力。 2. 每个服务器接收到文件之后向较近的服务器分发,具体类似多叉树,应该挺快的。 索引状: 1. 设置1000个缓存服务器,文件先下发到这些缓存上。(具体多少缓存、分几层缓存和具体业务有关。) 2. 每个缓存服务器接收1000个服务器取文件。
点赞
回复
分享
发布于 2018-04-22 13:43
Da柱
南京邮电大学 Java
想一想迅雷的下载方式就可以了。下载好的主机同样可以作为上传服务器。不断扩散,速度很快
点赞
回复
分享
发布于 2018-04-22 13:48
字节影像招生办
字节跳动_互娱研发-Android_Android开发
可以想到cdn,有树型和p2p结构
点赞
回复
分享
发布于 2018-04-22 15:28
SY423
中国科学院大学 Java
组播?
点赞
回复
分享
发布于 2018-04-22 20:47
点量软件小琴
山东师范大学 产品经理
使用P2P技术可以实现想要的结果,因为P2P的优势就是下载的同时也在上传,也成为整个网络中的节点或者服务器。可以说试下点量BT内核
点赞
回复
分享
发布于 2018-08-21 13:37
明天晚餐吃什么?
华中科技大学 C++
将文件分块 采用bt
点赞
回复
分享
发布于 2018-08-21 14:36
还没有回复哦~
相关推荐
03-13 22:06
已编辑
科大讯飞_硬件中心_嵌入式开发工程师
嵌入式开发工程师笔试面试指南-Linux驱动
1 什么是模块?⭐⭐⭐在 Linux 驱动中,模块是一种具有特定功能的可动态加载和卸载的代码单元。它能在不重新编译内核的情况下,为内核添加新功能或驱动新硬件。比如网卡驱动模块,可使内核支持特定型号的网卡。模块有独立的代码和数据空间,通过特定的接口与内核其他部分交互,如初始化函数用于在加载时进行资源分配等操作,清理函数用于在卸载时释放资源。常见的模块包括设备驱动模块、文件系统模块、网络协议模块等。2 驱动类型有几种⭐⭐⭐⭐⭐Linux 驱动类型主要有以下几种:字符设备驱动:以字符为单位进行数据传输,像键盘、鼠标、串口设备等,应用程序可通过系统调用对其进行读写等操作,通常按字节流方式处理数据。块设...
嵌入式/C++笔试面试指...
点赞
评论
收藏
分享
03-12 15:17
字节跳动_后端研发
字节跳动内推字节跳动内推码
字节跳动校招内推 内推码: GUW5DZU 校招投递链接: https://job.toutiao.com/s/i5rpTcj9 走上面链接投递就是我内推,全程push 杜绝石沉大海,走我内推的 我一定push到底 使用我的内推码进入字节跳动,你将受益于我们强大的技术团队和创新文化,成就你的职业梦想!
投递抖音信息等公司10个岗位 >
点赞
评论
收藏
分享
02-13 15:16
三江学院 运营
HR说我的简历没亮点
不玻璃心,求拷打
据说名字越长别人越关注你的昵称我觉得我要被关注了:
完全看不出你到底干了什么 全是车轱辘话
点赞
评论
收藏
分享
03-11 18:10
北京信息科技大学 材料工程师
原来是分赃不均暴雷了....
图源网络侵权删
dddooola:
这个事情我去年8月就看到有人b站(up:程序员正义)在举报了,可能一直在查,这次是查明后的处分了
华为存储OD事变
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
16
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
分库分表常见问题参考答案(收录25年至今的牛客面经)
2.4W
2
...
大厂Java基础面经总结
7803
3
...
生活比剧本还精彩,这届牛友太会写了!
6118
4
...
26届学院本上岸字节暑期!
4434
5
...
暑期实习作业帮一面
3143
6
...
26双非 非科班首战字节告捷 干货篇
2536
7
...
滴滴网约车春招 后端开发凉经
2116
8
...
oppo复筛挂
2043
9
...
PDD 一面
1815
10
...
美团约面
1756
创作者周榜
更多
正在热议
更多
#
笔试
#
2053983次浏览
23432人参与
#
初创公司值得加入吗?
#
14435次浏览
81人参与
#
腾讯音乐26届实习
#
152303次浏览
935人参与
#
牛友故事会
#
177255次浏览
2949人参与
#
技术岗笔试题求解
#
29210次浏览
444人参与
#
机械人,说说你的烦心事
#
53572次浏览
758人参与
#
元戎现在香不香
#
66031次浏览
539人参与
#
反问环节如何提问
#
77950次浏览
1866人参与
#
牛友打假中心
#
3300次浏览
139人参与
#
入职以后才知道的校招谎言
#
66520次浏览
384人参与
#
联想求职进展汇总
#
227617次浏览
1866人参与
#
如果能重来,就业or读研你选哪个?
#
108167次浏览
1325人参与
#
硬件人的简历怎么写
#
245691次浏览
2852人参与
#
两会劳动法放大招
#
32198次浏览
501人参与
#
机械人还在等华为开奖吗?
#
201857次浏览
1051人参与
#
打杂的实习你会去吗?
#
101760次浏览
895人参与
#
我的省钱小妙招
#
6377次浏览
185人参与
#
双非应该如何逆袭?
#
25842次浏览
853人参与
#
大学最后一个寒假,我想……
#
23770次浏览
231人参与
#
OPPO求职进展汇总
#
600053次浏览
4650人参与
#
你投递的公司有几家约面了?
#
59366次浏览
430人参与
#
如果中了500万,你会离职吗?
#
60571次浏览
449人参与
牛客网
牛客企业服务