這個問題是一個長鏡頭。我不認爲這實際上是可能的,但我想我會張貼它只是爲了看到。算法允許兩個程序更新同一數據
背景:
我有兩個系統。
一個是一個巨大的大型機系統,或多或少不可改變。
另一種是WCF/SQL Server 2008中的系統我寫。
系統通信的唯一方式是通過NServiceBus和TCP發送XML數據。 XML隨後被每個系統解析並執行。通信滯後時間可能有幾分鐘的時間。
大型機系統的所有數據和用戶的實際「擁有者」可直接在任何時間連接至主機並進行更改。 (有沒有辦法從進行更新阻止他們。)
問:
我需要能夠從我的系統發送更新,並確保我沒有覆蓋這一變化發生在大型機系統。有沒有辦法做到這一點?
實施例:
我送爲訂單數量到主框架的更新(它改變從2至4)。但不認得我,直接連接到大型機用戶已經更新爲2〜7
的訂單數量。當我的4更新得到處理,將會改寫更新到7
如果我沒有送更新到4,最終大型機會告訴我有關更新到7的情況。但是在它告訴我的時候,大型機用戶可能會進行另一次更新。
如果您每次更新數據並將其與新數據進行比較時會發生什麼?這樣它會告訴你自上次檢查以來是否還有其他更新。 – 2012-01-30 16:34:33
一些說明:1)更新形式爲「將數量更改爲X」或「將數量增加X」? 2)只要用戶的更新不被拒絕,用戶的更新是否可以延遲? – 2012-01-30 16:37:26
@EricFrick - 我無法從一個系統查詢另一個系統。唯一的通信是基於事件消息的。即使我可以,也無法知道當我查詢和發送消息時以及其他系統處理消息時,不會發生更新。 – Vaccano 2012-03-07 23:44:59