SOA 是經過功能組件化、服務化,來實現系統集成、解決信息孤島,這是其主要目標。而更進一步則是實現更快響應業務的變化、更快推出新的應用系統。與此同時,SOA 還實現了整合資源,資源複用。html
SOA 服務的設計標準是粗粒度、高重用、靈活、標準。性能則並不是首要考慮因素。git
SOA 的兩大功能是集成、服務編排(BPEL、BPM)。WF 在 SOA 架構中,實現服務編排的功能。github
參考構架:數據庫
相關資源:安全
ESB 是 SOA 的重要實現手段。ESB 實現 SOA 時,它做爲中心、媒介,集成的系統將只與它進行交互。而 ESB 實現與各類系統間的協議轉換、數據轉換、透明的動態路由功能(基於內容)。
在設計 ESB 時,集中的分發模塊會影響性能、可伸縮性、容錯能力,因此 ESB 要有良好的可伸縮性,支持集羣。
IBM 總結了 ESB 的功能,較完整的功能以下:
通訊 |
服務交互 |
|
|
集成 |
服務質量 |
|
|
安全性 |
服務級別 |
|
|
消息處理 |
管理和自治 |
|
|
建模 |
基礎架構智能 |
|
|
而最低要求的 ESB 須要具備的功能:
通訊 |
集成 |
|
|
服務交互 |
|
|
相關資源:
NServiceBus 是 .NET 平臺上最受歡迎的一個開源 ESB 框架。有較完善的文檔及示例代碼。
目前,.NET 平臺上開源的 ESB 框架,大多基於消息隊列來實現。NServiceBus 一樣也使用消息隊列機制來實現消息的傳遞,例如可使用 MSMQ。因爲消息隊列天生就是異步傳輸的,因此 NSB 也一樣只支持異步消息,是一種‘發送即忘卻’的模式。(As a general purpose communications technology, WCF does not enforce the queued messaging paradigm. NServiceBus does, and the architectural implications are profound.)。
NServiceBus 相對於 WCF 的優點在於:事件驅動的架構(發佈、訂閱)、更好地支持長時間運行的工做流。
缺點一:只支持異步的消息機制的問題是,沒法進行傳統的的數據查詢。(To allow clients to perform queries, it is best not to use NServiceBus. Messaging is designed for non-blocking operations, and queries are (for the most part) operations for which the user wishes to wait.)
若是必定要使用 NSB 來實現數據查詢,那麼只能經過 CQRS 來進行系統的設計:
缺點二:NSB 的服務能夠輕易集成到 WCF 中使用 MSMQ 實現,可是反之則不行。也就是說,已經使用 WCF 開發的服務,是沒法使用 NSB 來完成簡單的遷移的。(緣由也主要是由於 NSB 的異步機制。)
相關資源:
infoq 官方採訪介紹:NServiceBus——讓建立企業級.NET系統更加容易
NServiceBus---最流行的開源企業服務總線 for .Net
雲計算是一種部署體系結構,而 SOA 則是企業 IT 的體系結構。
SOA與雲整合既帶來應用和業務流程靈活的虛擬化和節省的費用(雲),又帶來原有應用的集成應用及業務流程的敏捷重構(SOA)。
上層基於 SOA 進行應用服務的開發,底層基於雲計算進行資源整合,包括存儲,網絡,數據庫,服務器等。
目前業界比較多的觀點贊同:SOA 與雲計算將整合發展。
它們的關係:
下面列出最近看的與本文相關的一些 pdf 書籍,東西太多,不上傳了,列下書名:
《中國SOA最佳應用及雲計算融合實踐》、《SOA in the Real World》、《SOA應用案例分析及設計》、《A Developer’s Guide to the Microsoft .NET Service Bus》、《IBM ESB概要設計說明書@CBOD》、《Mule+ESB+Studio+v3.3安裝使用手冊》、《軟通動力 蘭州ESB平臺項目詳細設計說明書》、《SOA實踐者指南》、《基於.NET+Framework+WCF的面向服務SOA中間件設計》、《基於WCF的SOA框架設計》、《IBM-ESB 在 SOA 內的工做角色》、《WSSF(服務工廠)架構剖析》、《開源SOA快速入門指南》、《Composite Software Construction》、《Enterprise Integration Patterns - Designing Building and Deploying Messaging Solutions》、《Enterprise SOA Adoption Strategies》、《Prentice.Hall.SOA.with.NET.and.Windows.Azure.May.2010》。
其它:
歡迎轉載,轉載請註明:
轉載自 胡慶訪[ http://zgynhqf.cnblogs.com/ ]