2011-10-31 55 views
0

基本上我需要同步兩個文件夾/文件結構,當文件夾和文件移動並經常更改時。他們都記錄了變化的歷史,並且可以通過請求查詢變化量。我已經有了一些,因爲我認爲當問題出現時,可靠的自制同步算法會隨時調整。我想知道這個問題是否存在數學背景,並且可能是我可以重新使用和改進我的系統的一些構建良好的理論和模式。同步算法

+0

['rsync'](http://en.wikipedia.org/wiki/Rsync)是怎麼回事? –

+0

甚至在維基百科上描述了rsync背後的理論。那裏有很好的搜索技能,@aloneguid。 :) – bzlm

+0

感謝,讓我試試,可能是搜索一個錯誤的關鍵字;( –

回答

0

不知道我理解你的問題,但也許Longest common subsequence problem這是diff程序的基礎:找出兩種狀態(即在你的情況下的文件夾/文件)之間的區別和編碼翻譯狀態A到狀態B(需要添加,修改和刪除兩個位置具有相同結構的文件)。如果其中一個位置是「黃金」副本(或「主」),另一個位置是「奴隸」,則此類解決方案有效:從屬服務器必須達到主服務器的狀態。當情況是主 - 主(兩個站點都接受寫入)時,解決這個問題要困難得多,而且您需要某種自動化的衝突解決方案。