首页 新闻 赞助 找找看

请问有没有人研究过多路同步传输的问题

0
悬赏园豆:10 [已解决问题] 解决于 2014-06-20 11:39

也许标题并不准确,问题情景是这样的:

情景1:

有四个服务器节点都存有相同的数据,客户端要获取这个数据,为了提高速度,我向这四个节点同时发送请求,然后等待最先到达的数据,丢弃比较迟的重复的数据。

情景2:

只有一个原服务器,但是有四个缓冲加速代理节点,那么客户端也向这四个节点请求相同的数据,等待最早到来的数据。

这样防止单路数据也许由于网络问题,数据来的太慢或者不来。大概思路这样的,不知道有没有人研究过!网上有没有相关文章!

飘浮于江的主页 飘浮于江 | 初学一级 | 园豆:190
提问于:2014-05-30 17:52
< >
分享
最佳答案
1

你这思路完全是作死。

照这个逻辑最后也是从同一个连接读取数据。这样你一次数据读取至少要连接4次。

收获园豆:10
吴瑞祥 | 高人七级 |园豆:29449 | 2014-06-01 21:55

如果只选一条路,我们不能保证这些数据能够比较快的到达,因为可能其他路径更快,我们几路并行传输,先到的先取用,其他的丢弃,这有何不可呢?有企业就是这样做的,只是不知道他内部是如何实现!

飘浮于江 | 园豆:190 (初学一级) | 2014-06-03 12:33

@飘浮于江: 一般情况下延迟或者说带宽速率都是由于客户端的原因,而不是服务器.你一个客户端一般情况下如果连1个服务器卡,连其它服务器也是卡.而且你几路并行传输看着是好了.但不是那么简单的,除非你像迅雷或者说网络蚂蚁那样做断点续传的.如果说4个连接下一个同样的东西,这时候带宽差异有可能是由于客户机的带宽分配造成的.你不能以这个时候的快慢来判断哪个服务器比较块.

像你说其它人有这样做的.我是真没听说过有这种做法的,因为这种解决方案实在是想不出能解决什么问题.

一般都是实现断点续传,这样你多个服务器还能实现服务器的带宽叠加.

或者你实现一个P2P等传输协议.你光这样多架几个服务器多加几个连接.除了给服务器和客户机增加压力之外什么帮助都不会有的

吴瑞祥 | 园豆:29449 (高人七级) | 2014-06-03 13:29

@吴瑞祥: 嗯嗯,确实是我的思路有问题,后面考虑多条路径按不同数据顺序传输数据的话,可能会较好一点。

飘浮于江 | 园豆:190 (初学一级) | 2014-06-20 11:38
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册