我們排查特定生產問題的時候那種拍攝自己的腳在客戶現場有關於微軟同步框架...換出客戶端同步數據庫
我們有一箇中央服務器作爲數據記錄系統公開了一個WCF服務,我們使用Sync Framework 2.0來同步數據與斷開的客戶端實例。 (實現的許多細節都是未知的,它是一個繼承的代碼庫。)在過去的某個時間點對用戶計算機上的問題進行故障排除時,決定清除特定客戶端的本地數據庫並將其替換爲已知來自另一個客戶的好副本。
一切似乎工作一段時間。但是實施過程中有一個細節我們當時還不知道。同步內部跟蹤客戶端數據庫標識這意味着服務器無法區分這兩個客戶端。所以一個人會同步他們的數據,然後另一個會留在一個未知的狀態。
我們確定了受影響的用戶,我們正在識別受影響的數據,並且我們正在頭腦風暴潛在的解決方案。對於後一部分,我想知道這裏的任何人是否有使用Sync Framework的經驗,並且可以提出潛在的行動方案?
我們正在考慮的一種潛在方法是確定Sync在哪裏以及如何跟蹤該身份(可能是某處的GUID?)並對其進行更改。這聽起來像是最快速的修復,儘管它至少仍然會讓我們再次觸摸受影響的記錄來觸發它們再次同步。
我們不想冒丟失數據的風險,所以我們猶豫放棄客戶端數據庫並重新提供。但更重要的是供應一個全新的數據庫的這個過程是一個顯著命中資源和當前的設置用戶的停機時間,所以它的東西,以避免可能的話。
有沒有人在這裏有同步框架的經驗?有沒有人遇到過這個問題?你會建議什麼途徑?
的數據庫提供商您使用(SqlSyncProvider/SqlCeSyncProvider?或SqlCEClientSyncProvider/DbServerSyncProvider?)什麼數據庫在客戶端(CE?,Express?)? – JuneT
@JuneT:SQLExpress在客戶端上的SqlSyncProvider。 – David