1

我们需要编写能够持续(即在可用时发送新数据)同时将非常大的文件(几个 Tb)发送到多个目的地的软件。一些目的地有到源的专用光纤连接,而有些则没有。

出现几个问题:

  • 我们计划为此任务使用 TCP 套接字。为了处理网络中断和连接断开,您会推荐什么故障转移程序?
  • 上传完成后应该发生什么:服务器是否应该关闭套接字?如果是这样,那么让另一个守护进程在另一个端口上提供文件校验和是一个好的设计决定吗?
  • 除了再次下载它们之外,您能否推荐一种处理损坏文件的方法?也许我可以将它们分成 10Mb 的块并分别计算每个块的校验和?

谢谢。

4

1 回答 1

0

由于没有给出答案,我在这里分享我们自己的决定:

  • 有一个单独的守护程序用于为块和整个文件提供校验和。
  • 我们决定暂时放弃在 VPN 上使用多播的想法;我们使用多进程服务器来分发文件。文件下载完成后socket关闭,worker进程退出;任何损坏的块都需要单独下载。
  • 我们使用文件系统监视器在新数据到达第 1 层分发服务器时立即捕获它。
于 2010-06-25T12:10:57.957 回答