在一组机器之间分发大文件的最快方法是什么?

在一组机器之间分发大文件的最快方法是什么?

假设您运行一个高度并行的服务,该服务需要您定期在多台机器(假设为 100 台)之间同步一个大文件(假设为 100GB),并且您希望尽快分发这些数据,以便下游处理该文件的服务可以开始工作。

依次将其发送到机器一,然后是机器二,然后是机器三,等等,编写脚本很容易,但非常耗时,而且非常浪费:在任何给定时间,都有 98 台机器处于空闲状态。

这个维基百科页面描述了向多台机器广播数据的多种不同算法。是否有任何 shell 实用程序使用比简单策略更智能的策略对常规文件执行此广播操作?

答案1

如果它们在同一个网络上,任何多播 FTP 软件都应该可以工作(比 bittorrent 更快):uftp、udpcast 和 flamethrower 可在 apt 中使用。

相关内容