Backup

通過一次執行多個實例來加速 rsync?

  • April 2, 2012

我必須將一個大目錄轉移到另一台伺服器。

我的問題是我無法使用可用的全部頻寬,因為一個並發的 tcp 流沒有那麼快。

基本上是當今任何下載管理器都支持的功能。

因此我想做並發數據流。

但是我找不到支持這個的程序,所以我想一次執行多個實例或 rsync。

這是一個好主意還是你能指出我更合適的工具的方向?

您可以用 lftp 替換 rsync - 請參閱我關於超級使用者的文章:

https://superuser.com/questions/75681/inverse-multiplexing-to-speed-up-file-transfer/305236#305236

唯一的問題可能是 lftp 不“只是傳輸更改/添加的文件”。但我可以向你保證,這是我見過的以多執行緒方式傳輸數據的最快方式。

順便提一下,您提出的TCP連接無法快速到足以耗盡您的整個網路頻寬的問題,僅發生在頻寬延遲積較大的場景中,這種情況很少出現在網路上。在 LAN 中延遲很小,這使產品保持小,而在 WAN 中,頻寬很小,使產品保持小。

如果您的網路具有非常大的頻寬延遲積,您可以做一些事情來調整 TCP 以使用它,首先是增加視窗大小並增加路徑 MTU(嗯,這是一個 IP 調整,而不是 TCP調整,但它適用!)。查看有關研究網路的論文以了解更多資訊。如需進一步幫助調整 TCP 以適應您的場景,您可能需要描述您的特定網路。

至於使用 rsync,您無法同時執行兩個同時複製相同文件的 rsync。

我能想到的唯一可以在 rsync 級別做的事情就是將您的目錄分成多個子目錄並並行地一個一個地傳輸它們。

引用自:https://serverfault.com/questions/375720