rsync 是保持同步單一小檔案的好選擇嗎?

rsync 是保持同步單一小檔案的好選擇嗎?

我必須透過緩慢且不穩定的撥接數據機連線來讓單一相對較小的檔案保持最新狀態。

該檔案是一個 XML,開始時大小為 15K,兩小時後大小變為 500K。

這是單向複製。我目前的解決方案保持每分鐘下載一次整個文件。到目前為止,它在寬頻連線上運作得很好,但現在我必須在只能撥號的地方使用它。由於下載速度很慢,「即時數據」的錯覺消失了。

我認為 rsync 可以使我免於開發專有(且低效)的「僅增量」協定。我想知道 rsync 在這種特殊情況下是否會帶來真正的好處。

那麼,問題是:rsync 協定是否適合 15K 到 500K 的單一文件?

答案1

不是在這種情況下。你最好使用類似的東西差異XML僅發送文件之間的差異作為更新,並在目標電腦上套用修補程式。

答案2

好吧,我用 rsync 做到了,我不得不說它工作得很好。

它傳輸的數據非常少,以至於我能夠在狹窄的撥號連接下將更新頻率縮短到 20 秒(比我們之前使用寬頻的頻率的三分之一!)。

更新 800kb XML 現在需要 5kb 下載 + 800 位元組上傳!

在沒有更改更新時檢查版本只需 500 位元組下載 + 100 位元組上傳! (我在常規聊天會話中輸入更多位元組!)

比其他差異解決方案好得多,而且我不需要圍繞它進行任何程式設計。 (之前我們曾想過添加一個推送機制來啟動 rsync,但我們還沒有真正需要它。20 秒是可以接受的,並且輪詢非常輕量級。)

幹得好,rsync!

PS:我沒有嘗試過 Git,它可能也是一個很好的解決方案。

相關內容