2010-08-13 128 views
1

我可以檢查爲不同的服務提供商提供通用Web服務併爲每個服務提供商提供單獨的Web服務有哪些優缺點?SOA設計體系結構

有沒有什麼文章可以參考?

回答

0

好處是創建基礎結構部分更容易。
缺點是您現在需要編寫更多的代碼來分隔不同的消息並將它們分派到正確的模塊進行處理。你的代碼會更復雜,更難維護。

+0

可否請你回答http://stackoverflow.com/questions/9498962/contract-first-soa -designing-business-domain-wcf? – Lijo 2012-02-29 12:29:35

0

在兩條道路上都停了下來,我建議你考慮使用較小版本的服務,而不是噸一大型廚房水槽服務。

採取unix哲學做一件事,做得很好。把一個版本號放在上面,這樣你就可以升級而不會突破用戶。也儘量保持每個版本的代碼彼此分開。一旦1.0版本投入使用,您不希望意外地與可能已經編碼您的bug的消費者斷開合約。只需發佈一個新版本並將您的消費者推向升級後的服務即可。

+0

安全和性能方面的問題與小型版本服務相關,而不是一個大型廚房水槽服務。 – fvvrr 2010-08-16 03:01:03

+0

@fwrr,我不清楚你在這裏爭論的方式。我會爭辯說,安全在任何規模的服務中都是一個常數。您仍然必須對大型和小型服務執行身份驗證和授權操作。我認爲如果你所看到的只是調用和解析一條消息的時間,那麼性能通常會贏得我的小型服務。但是,如果您必須撥打10個服務才能獲得您所需的服務,那麼性能可能相當於一項大型服務。 這一切都歸結於您的要求和目標。 – clarson 2010-08-16 14:08:55

0

BostonBob說實話,服務粒度應範圍的一個能力,這有助於維護從長遠看隨着事態的生活在只有一個地方,在邏輯上是凝聚力。

對於服務運營粒度來說,甜蜜點位於服務合同的3-5個操作之間,如果有更多的機會將其分解爲兩個有用的服務,則以12爲上限。

下面是如何建立一個SOA

我建議你閱讀托馬斯·爾和Roger會議的文章一些實際的例子,這會給你什麼SOA就是一個堅定的手柄。以及如何分區服務

SOA Design Pattern

Achieving integrity in a SOA

Why your SOA should be like a VW Beetle

SOA explained for your boss