SOA資料整理 2 SOA的發展歷程

2021-04-16 11:42:04 字數 2577 閱讀 6178

soa的發展史伴隨著it計算環境的不斷演進而產生的。計算環境是指由一組計算機、軟體平台和相互聯通的網路組成,這個環境能夠處理和交換數字資訊,允許外界訪問其內資訊資源。不同的計算環境有不同的計算風格和程式設計模型,由一些特定於該計算環境的技術來支撐。

計算環境的演變經歷了若干個階段,在早期的主機時代,絕大多數的計算功能和系統的組成部分,都包括在一台機器裡。在20世紀80年代,隨著pc的繁榮,計算環境發生很大的變化。通過區域網相互連線的計算裝置構成客戶/伺服器計算環境,計算資源和資料資源被適當地分割,客戶和伺服器通過網路協議、遠端呼叫或訊息等方式來相互協作,完成計算。

為了滿足更高的可伸縮性需求,多層架構出現,計算資源和資料資源的分布多樣化,與企業中原來已經存在的計算環境,尤其是主機及其遺留系統之間的整合也變得越來越重要。中介軟體迅速發展,開始出現分布式物件、元件和介面等概念,用於在計算環境中更好地分割運算邏輯和資料資源。計算環境中不同部分之間的互動,也從原有相對低層的網路協議、遠端呼叫和訊息機制的基礎上,發展到支援分布式物件、元件和介面之間的互動,這種互動在名字服務(naming service)等的支援下,通常是位置透明的。但由於缺乏普遍的標準化支援,很難做到技術透明,系統是緊耦合的。

隨著internet的發展,開放和標準的網路協議被普遍支援,所有底層計算平台都開始支援這些標準和協議,這導致乙個計算環境內部和各個計算環境之間互動的藩籬被打破。資料和功能的表示與互動在xml、web服務技術與標準的基礎上,保證了通用性和最大的互動能力,這使得計算環境發展到乙個全新的階段—基於標準、開放的網際網路技術的計算環境。在這樣的計算環境中,各個部分可以採用異構的底層技術,它們使用xml來描述和表示自己的資料和功能,採用開放的網路協議(如http)來握手,在此之上,基於web服務來互操作和交換資料。web服務開始流行以後,網際網路迅速出現了大量的基於不同平台和語言開發的web服務元件。為了能夠有效地對這些為數眾多的元件進行管理,人們迫切需要找到一種新的面向服務的分布式web計算架構。該架構要能夠使這些由不同組織開發的web服務能夠相互學習和互動,保障安全以及兼顧復用性和可管理性。由此,人們重新找回soa,並賦予其時代的特徵。需求推動技術進步,正是這種強烈的市場需求,使得soa再次成為人們關注的焦點。回顧soa發展歷程,大致分為了三個階段:

1  孕育階段

這一階段以xml(extensibl markup language,可擴充套件標記語言)技術為標誌,時間大致從上世紀九十年代末到本世紀初。雖然這段時期很少提到soa,但xml的出現無疑為soa的興起奠定了穩固的基石。xml是由w3c所建立,源自流行的sgml(standard generalised markup language,標準通用標記語言),它在上世紀60年代後期就已存在。這種廣泛使用的元語言,允許組織定義文件的元資料,實現企業內部和企業之間的電子資料交換。由於sgml比較複雜,實施成本很高,因此很長時間裡只用於大公司之間,限制了它的推廣和普及。

通過xml,開發人員擺脫了html語言的限制,可以將任何文件轉換成xml格式,然後跨越網際網路協議傳輸。借助xslt(extensible stylesheet language transformation,xml轉換語言),接受方可以很容易地解析和抽取xml的資料。這使得企業既能夠將資料能夠以一種統一的格式描述和交換,同時又不必負擔sgml那樣高的成本。事實上,xml實施成本幾乎和html一樣。

xml是soa的基石,xml規定了服務之間以及服務內部資料交換的格式和結構。xsd schemas 保障了訊息資料的完整性和有效性,而xslt使得不同的資料表達能溝通過schema對映而互相通訊。

2  發軔之初

2023年以後,人們普遍認識到基於公共-專有網際網路之上的電子商務具有極大的發展潛力,因此需要建立一套全新的基於網際網路的開放通訊框架,以滿足企業對電子商務中各分立系統之間通訊的要求。於是人們提出了web服務的概念,希望通過將企業對外服務封裝為基於統一標準的web服務,實現異構系統之間的簡單互動。這一時期,出現了三個著名的web服務標準和規範:soap(****** object access protocal,簡單物件訪問協議)、 wsdl(web services description language,web服務描述語言)、uddi(universal discovery description and integration,通用服務發現和整合協議) 。

這三個標準可謂web服務三劍客,極大地推動了web服務的普及和發展。短短幾年之間,網際網路上出現了大量的web服務,越來越多的**和公司將其對外服務或業務介面封裝成web服務,有力地推動了電子商務和網際網路的發展。web服務也是網際網路web 2.0時代的一項重要特徵。

3  成長階段

從2023年開始,soa推廣和普及工作開始加速。不僅專家學者,幾乎所有關心軟體行業發展的人士都開始把目光投向soa。一時間,soa頻頻出現在各種技術**、新產品發布會和技術交流會上。各大廠商也逐漸放棄成見,通過建立廠商間的協作組織共同努力制定中立的soa標準。這一努力最重要的成果體現在3個重量級規範上:sca (service component architecture ,服務元件架構)、 sdo (service data objects,服務資料物件)、ws-policy。

sca和sdo構成了soa程式設計模型的基礎,而ws-policy建立了soa元件之間安全互動的規範。這三個規範的發布,標誌著soa進入了實施階段。從整體架構角度看,人們已經把關注點從簡單的web服務拓展到面向服務體系架構的各個方面,包括安全、業務流程和事務處理等。

SOA之(2) SOA架構基礎概念與設計框架

設計框架與架構相關的概念緊密相連,原則 模式和架構始終是與設計共舞的。soa服務設計的原則中記錄了乙個基礎的設計框架 設計特性 design characteristic 由設計產生的軟體程式或技術架構的屬性。它可以是任何具體的質量要求,比如程式元件化,功能粒度的粗細等。設計原則 design pr...

SOA相關資料整理分享

昨 幸福框架同學問能否推薦soa一些資,想想之前看過不少資料文件,就整理分享下,有需要的可以參考下。理解面向服務的體系結構中企業服務匯流排場景和解決方案,第 1 部分 soa 和 web services。ibm提供的文章 教程 標準 和其他 web services 和 soa 技術資源。serv...

SOA相關資料整理分享

昨 幸福框架同學問能否推薦soa一些資,想想之前看過不少資料文件,就整理分享下,有需要的可以參考下。理解面向服務的體系結構中企業服務匯流排場景和解決方案,第 1 部分 soa 和 web services。ibm提供的文章 教程 標準 和其他 web services 和 soa 技術資源。serv...