對于SOA的解釋,目前沒有一種統一的說法,收集了一下各大公司給的定義,和大家分享,希望能對SOA有個更全面的理解:
Service-oriented architecture presents an approach for building distributed systems that deliver application functionality as services to either end-user applications or other services. It is comprised of elements that can be categorized into functional and quality of service.
來源:IBM
Patterns: Service-Oriented Architecture and Web Services.pdf
Service-Oriented Architecture is a component model that inter-relates an application's different functional units, called services, through well-defined interfaces and contracts between these services.
From:IBM
http://www-128.ibm.com/developerworks/webservices/newto/#7
面向服務的架構(SOA)是一種設計方法學,其目的是最大限度地重用應用程序中立型的服務以提高IT適應性和效率。雖然這些概念已經存在了數十年之久,但只是在出現了基于標準的集成技術(如Web服務和XML)之后,SOA才開始被加速采用。
來源:BEA
http://dev2dev.bea.com.cn/techtype/soa/
“SOA是一種設計和實現企業應用程序的方法,這些應用程序處理那些通過定義良好的、平臺無關的接口約定來訪問松散耦合的、粗粒度的(商業水平)、可重用部件(服務)的互通問題。”
From:BEA
Author:Steve Wilkes
http://dev2dev.bea.com.cn/techdoc/200408238.html
SOA與其說是一種技術,不如說是一種的思維方式。它是一項大膽的基礎架構變革議程,表達我們如何通過技術和協同工作來實現文化變遷。它的突然普及不是大規模宣傳的結果,而是對SOA作為一種使業務和IT系統更密切結合的演化的認知。面向服務的架構是一種IT戰略,它把包含在各種企業應用中的分散的功能組織為可互操作的、基于標準的服務,而這些服務可以再被迅速組合和重用以滿足業務需求。
From:BEA
Author:David Groves,Americas SOA Practice Lead,BEA Systems Worldwide Consulting Development
http://dev2dev.bea.com.cn/techdoc/20051213706.html
A service-oriented architecture provides a standards-based platform that allows services to be provided, discovered, and consumed by each other, to facilitate the creation of a business process.
From:Oracle:Oracle_EBS_and_SOA.pdf
顯然,SOA不是一項技術,在上面各種解釋中,SOA被認為是一種模型,一種方法,一種思維方式,甚至是一種IT戰略。基于服務的思想很早以前便出現了,CORBA已經存在了很多年并且提供了許多至今仍被吹捧的SOA優點,Web Service的出現,使得SOA的思想得以方便實現,大大加速了SOA的發展。目前,SOA用的技術主要是Web Service,但不限于Web Service。