C# 在服务器之间快速传输大数据

C# 在服务器之间快速传输大数据,c#,java,windows,networking,C#,Java,Windows,Networking,这是一个常见的问题,但在谷歌上搜索这个问题会产生很多废话。 随着数据量越来越大,加上处理能力和云计算能力,我们越来越需要快速数据传输技术,能够通过在不同的服务器/客户端之间传播/移动/共享数据来释放所有这些可用数据的能力 在我们的例子中,我们正在记录实时二进制数据(每天50 Gig),我们需要每天向订户上传/下载这些数据(是的,每个订户服务器都需要这些数据,用于计算和各种数据分析) 因此,简而言之,现在有什么选择可以在远程windows服务器之间真正快速地传输大量Gig的数据呢 这是一个悬而未决

这是一个常见的问题,但在谷歌上搜索这个问题会产生很多废话。

随着数据量越来越大,加上处理能力和云计算能力,我们越来越需要快速数据传输技术,能够通过在不同的服务器/客户端之间传播/移动/共享数据来释放所有这些可用数据的能力

在我们的例子中,我们正在记录实时二进制数据(每天50 Gig),我们需要每天向订户上传/下载这些数据(是的,每个订户服务器都需要这些数据,用于计算和各种数据分析)

因此,简而言之,现在有什么选择可以在远程windows服务器之间真正快速地传输大量Gig的数据呢


这是一个悬而未决的问题。无论采用何种协议,每个想法都是受欢迎的。

通过网络发送和接收数据的挑战是多方面的

  • 网络带宽是最大的限制因素,在应用程序级别,您几乎无法为此做任何事情(除了偶尔压缩数据,甚至在这种情况下,压缩比决定了增益)。所以更快的网络是首选

  • 某些协议更适合传输某些类型的文件/数据。例如,http是一种基于文本的协议,并不真正适合二进制和大型内容。但是,由于它是最流行的网络协议,需要通过网络发送二进制内容,所以像这样的技术已经发展起来。如果您的数据按GBs顺序排列(即您的情况),则HTTP确实不是您的选择

  • FTP是最流行的用于通过网络传输文件的协议,它是专门为传输文件而设计的。有几种类似FTP的扩展,它们是专门为大型数据传输而设计的

  • BitTorrents是另一个可以探索的选项。Facebook使用BitTorrents将二进制文件推送到服务器(数万个)


  • 你的问题是非常开放的,我受我的经验限制:)。我找到了大数据传输的交易。希望这对你有帮助。

    我认为这可能更好地适合程序员。如何存储数据?你是否考虑使用BitTorrent协议?作为一个选项见@ServerFault+1用于使用bit torrent或类似的对等协议,因为您必须发送多个副本,并且网络带宽可能是限制因素。+1用于多种方法。我还要补充一点。不知怎的,服务器上的人们正是为了这个目的。此外,还讨论了一些解决方案,但不确定这些解决方案是否可以通过编程方式使用。