我有一個服務器應用程序,通過網絡向多個客戶端提供數據。你可以將數據想象成一個巨大的字符串列表。服務器上的數據可能會更改,並且需要在所有客戶端上同步。是否有通過網絡同步數據列表的模式?
我目前正在使用這種方法:在初始連接時,客戶端應用程序請求所有當前數據(可能是很多字節)。然後,它訂閱任何數據的更新(添加,更改和刪除)。
這工作正常,除非數據在發送初始數據列表和應用訂閱更改的服務器之間發生更改 - 在這種情況下,客戶端會丟失一些更新並在不知道它的情況下處理過期的數據。
我相信這是一個非常常見的情況,所以應該有一個模式來解決這個問題。我使用C#4和WCF,但該模式應該是語言不可知的,我相信。