我正在將我的架構從耦合到SOA(WCF)鬆散耦合。 我有幾個相互溝通的服務。 您將如何同步服務之間的業務實例?業務對象WCF服務之間的同步
在這裏我看到兩種情況:
所有業務對象中只有一個服務的創建,讓我們把它MainService,它是誰擁有所有的對所做的更改訪問的唯一一個對象。該服務負責更新數據庫中的對象。對象的任何更新都會引發通知。其他服務註冊他們需要的事件並相應地收到通知。我稱之爲集中式的做法。很多服務之間的通話 -
+作爲換做是
儘快通知服務。
-更多的耦合。所有的服務只是加載他們需要的對象,並定期監視數據庫中是否有任何更改。我的想法是使用sql server 2008的更改跟蹤來檢測對對象所做的任何更改。
+交通服務之間的通信可行的問題少。
+較少耦合
-由於定期監測導致的延遲。
那麼,你對此的回答是什麼? (如果你有3,4,等...這也將是不錯的)
問題是某些服務需要以某種方式通知,以便知道哪些對象(業務實例)已被修改。 所以我有兩個解決方案。首先是當業務對象被修改時通知其他服務的組件。另一個是通過更改跟蹤來輪詢數據庫中的更改。 – Roubachof 2009-10-27 16:56:27