日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

SOA (面向服务的架构)

發(fā)布時間:2023/12/18 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SOA (面向服务的架构) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

見:https://baike.baidu.com/item/SOA/2140650?fr=aladdin



UDDI 解說參見:UDDI是什么

SOAP解說參見: SOAP:簡單對象訪問協(xié)議




面向服務的架構(SOA)是一個組件模型,它將應用程序的不同功能單元(稱為服務)通過這些服務之間定義良好的接口和契約聯(lián)系起來。接口是采用中立的方式進行定義的,它應該獨立于實現(xiàn)服務的硬件平臺、操作系統(tǒng)和編程語言。這使得構建在各種各樣的系統(tǒng)中的服務可以以一種統(tǒng)一和通用的方式進行交互。 中文名
面向服務的體系結構
外文名
Service-Oriented Architecture
外語縮寫
SOA
本????質
組件模型

定義: 面向服務架構,它可以根據(jù)需求通過網(wǎng)絡對松散耦合的粗粒度應用組件進行分布式部署、組合和使用。服務層是SOA的基礎,可以直接被應用調用,從而有效控制系統(tǒng)中與軟件代理交互的人為依賴性。 SOA是一種粗粒度、松耦合服務架構,服務之間通過簡單、精確定義接口進行通訊,不涉及底層編程接口和通訊模型。SOA可以看作是B/S模型、XML(標準通用標記語言的子集)/Web Service技術之后的自然延伸。 SOA將能夠幫助軟件工程師們站在一個新的高度理解企業(yè)級架構中的各種組件的開發(fā)、部署形式,它將幫助企業(yè)系統(tǒng)架構者以更迅速、更可靠、更具重用性架構整個業(yè)務系統(tǒng)。較之以往,以SOA架構的系統(tǒng)能夠更加從容地面對業(yè)務的急劇變化。

體系結構

編輯

松耦合的系統(tǒng)

這種具有中立的接口定義(沒有強制綁定到特定的實現(xiàn)上)的特征稱為服務之間的松耦合。松耦合系統(tǒng)的好處有兩點,一點是它的靈活性,另一點是,當組成整個應用程序的每個服務的內部結構和實現(xiàn)逐漸地發(fā)生改變時,它能夠繼續(xù)存在。與之相反,緊耦合意味著應用程序的不同組件之間的接口與其功能和結構是緊密相連的,因而當需要對部分或整個應用程序進行某種形式的更改時,它們就顯得非常脆弱。 對松耦合的系統(tǒng)的需要來源于業(yè)務應用程序需要根據(jù)業(yè)務的需要變得更加靈活,以適應不斷變化的環(huán)境,比如經(jīng)常改變的政策、業(yè)務級別、業(yè)務重點、合作伙伴關系、行業(yè)地位以及其他與業(yè)務有關的因素,這些因素甚至會影響業(yè)務的性質。我們稱能夠靈活地適應環(huán)境變化的業(yè)務為按需(On demand)業(yè)務,在按需業(yè)務中,一旦需要,就可以對完成或執(zhí)行任務的方式進行必要的更改。 雖然面向服務的體系結構不是一個新鮮事物,但它卻是更傳統(tǒng)的面向對象的模型的替代模型,面向對象的模型是緊耦合的,已經(jīng)存在二十多年了。雖然基于 SOA 的系統(tǒng)并不排除使用面向對象的設計來構建單個服務,但是其整體設計卻是面向服務的。由于它考慮到了系統(tǒng)內的對象,所以雖然 SOA 是基于對象的,但是作為一個整體,它卻不是面向對象的。不同之處在于接口本身。SOA 系統(tǒng)原型的一個典型例子是通用對象請求代理體系結構(Common Object Request Broker Architecture,CORBA),它已經(jīng)出現(xiàn)很長時間了,其定義的概念與 SOA 相似。 然而, SOA 已經(jīng)有所不同了,因為它依賴于一些更新的進展,這些進展是以可擴展標記語言(eXtensible Markup Language,XML)為基礎的。通過使用基于XML(標準通用標記語言的子集) 的語言(稱為 Web 服務描述語言(Web Services Definition Language,WSDL))來描述接口,服務已經(jīng)轉到更動態(tài)且更靈活的接口系統(tǒng)中,非以前 CORBA 中的接口描述語言(Interface Definition Language,IDL)可比了。 Web 服務并不是實現(xiàn) SOA 的惟一方式。前面剛講的 CORBA 是另一種方式,這樣就有了面向消息的中間件(Message-Oriented Middleware)系統(tǒng),比如 IBM 的 MQseries。但是為了建立體系結構模型,您所需要的并不只是服務描述。您需要定義整個應用程序如何在服務之間執(zhí)行其工作流。您尤其需要找到業(yè)務的操作和業(yè)務中所使用的軟件的操作之間的轉換點。因此,SOA 應該能夠將業(yè)務的商業(yè)流程與它們的技術流程聯(lián)系起來,并且映射這兩者之間的關系。例如,給供應商付款的操作是商業(yè)流程,而更新您的零件數(shù)據(jù)庫,以包括進新供應的貨物卻是技術流程。因而,工作流還可以在 SOA 的設計中扮演重要的角色。 此外,動態(tài)業(yè)務的工作流不僅可以包括部門之間的操作,甚至還可以包括與不為您控制的外部合作伙伴進行的操作。因此,為了提高效率,您需要定義應該如何得知服務之間的關系的策略,這種策略常常采用服務級協(xié)定和操作策略的形式。 最后,所有這些都必須處于一個信任和可靠的環(huán)境之中,以同預期的一樣根據(jù)約定的條款來執(zhí)行流程。因此,安全、信任和可靠的消息傳遞應該在任何 SOA 中都起著重要的作用。

體系結構作用

我可以用面向服務的體系結構做什么? 對 SOA 的需要來源于需要使業(yè)務 IT 系統(tǒng)變得更加靈活,以適應業(yè)務中的改變。通過允許強定義的關系和依然靈活的特定實現(xiàn),IT 系統(tǒng)既可以利用現(xiàn)有系統(tǒng)的功能,又可以準備在以后做一些改變來滿足它們之間交互的需要。 下面舉一個具體的例子。一個服裝零售組織擁有 500 家國際連鎖店,它們常常需要更改設計來趕上時尚的潮流。這可能意味著不僅需要更改樣式和顏色,甚至還可能需要更換布料、制造商和可交付的產(chǎn)品。如果零售商和制造商之間的系統(tǒng)不兼容,那么從一個供應商到另一個供應商的更換可能就是一個非常復雜的軟件流程。通過利用 WSDL 接口在操作方面的靈活性,每個公司都可以將它們的現(xiàn)有系統(tǒng)保持現(xiàn)狀,而僅僅匹配 WSDL 接口并制訂新的服務級協(xié)定,這樣就不必完全重構它們的軟件系統(tǒng)了。這是業(yè)務的水平改變,也就是說,它們改變的是合作伙伴,而所有的業(yè)務操作基本上都保持不變。這里,業(yè)務接口可以作少許改變,而內部操作卻不需要改變,之所以這樣做,僅僅是為了能夠與外部合作伙伴一起工作。 另一種形式是內部改變,在這種改變中,零售組織決定它還將把連鎖零售商店內的一些地方出租給專賣流行衣服的小商店,這可以看作是采用店中店(store-in-store)的業(yè)務模型。這里,雖然公司的大多數(shù)業(yè)務操作都保持不變,但是它們需要新的內部軟件來處理這樣的出租安排。盡管在內部軟件系統(tǒng)可以承受全面的檢修,但是它們需要在這樣做的同時不會對與現(xiàn)有的供應商系統(tǒng)的交互產(chǎn)生大的影響。在這種情況下,SOA 模型保持原封不動,而內部實現(xiàn)卻發(fā)生了變化。雖然可以將新的方面添加到 SOA 模型中來加入新的出租安排的職責,但是正常的零售管理系統(tǒng)繼續(xù)如往常一樣。 為了延續(xù)內部改變的觀念,IT 經(jīng)理可能會發(fā)現(xiàn),軟件的新配置還可以以另外的一種方式加以使用,比如出租粘貼海報的地方以供廣告之用。這里,新的業(yè)務提議是通過在新的設計中重用靈活的 SOA 模型得出的。這是來自 SOA 模型的新成果,并且還是一個新的機會,而這樣的新機會在以前可能是不會有的。 垂直改變也是可能的,在這種改變中,零售商從銷售他們自己的服裝完全轉變到專門通過店中店模型出租地方。如果垂直改變完全從最底層開始的話,就會帶來 SOA 模型結構的顯著改變,與之一起改變的還可能有新的系統(tǒng)、軟件、流程以及關系。在這種情況下,SOA 模型的好處是它從業(yè)務操作和流程的角度考慮問題而不是從應用程序和程序的角度考慮問題,這使得業(yè)務管理可以根據(jù)業(yè)務的操作清楚地確定什么需要添加、修改或刪除。然后可以將軟件系統(tǒng)構造為適合業(yè)務處理的方式,而不是在許多現(xiàn)有的軟件平臺上常常看到的其他方式。 正如您可以看到的,在這里,改變和 SOA 系統(tǒng)適應改變的能力是最重要的部分。對于開發(fā)人員來說,這樣的改變無論是在他們工作的范圍之內還是在他們工作的范圍之外都有可能發(fā)生,這取決于是否有改變需要知道接口是如何定義的以及它們相互之間如何進行交互。與開發(fā)人員不同的是,架構師的作用就是引起對 SOA 模型大的改變。這種分工,就是讓開發(fā)人員集中精力于創(chuàng)建作為服務定義的功能單元,而讓架構師和建模人員集中精力于如何將這些單元適當?shù)亟M織在一起,它已經(jīng)有十多年的歷史了,通常用統(tǒng)一建模語言(Unified Modeling Language,UML),并且描述成模型驅動的體系結構(Model-Driven Architecture,MDA)。 對于面向同步和異步應用的,基于請求/響應模式的分布式計算來說,SOA是一場革命。一個應用程序的業(yè)務邏輯(business logic)或某些單獨的功能被模塊化并作為服務呈現(xiàn)給消費者或客戶端。這些服務的關鍵是他們的松耦合特性。例如,服務的接口和實現(xiàn)相獨立。應用開發(fā)人員或者系統(tǒng)集成者可以通過組合一個或多個服務來構建應用,而無須理解服務的底層實現(xiàn)。舉例來說,一個服務可以用.NET或J2EE來實現(xiàn),而使用該服務的應用程序可以在不同的平臺之上,使用的語言也可以不同。.

特性狀況

編輯 基本特征 SOA的實施具有幾個鮮明的基本特征。實施SOA的關鍵目標是實現(xiàn)企業(yè)IT資產(chǎn)的最大化作用。要實現(xiàn)這一目標,就要在實施SOA的過程中牢記以下特征: 可從企業(yè)外部訪問 隨時可用 粗粒度的服務接口分級 松散耦合 可重用的服務 服務接口設計管理 標準化的服務接口 支持各種消息模式 精確定義的服務契約 SOA服務具有平臺獨立的自我描述XML文檔。Web服務描述語言(WSDL, Web S SOA藍圖 ervices Description Language)是用于描述服務的標準語言。 SOA 服務用消息進行通信,該消息通常使用XML Schema來定義(也叫做XSD, XML Schema Definition)。消費者和提供者或消費者和服務之間的通信多見于不知道提供者的環(huán)境中。服務間的通訊也可以看作企業(yè)內部處理的關鍵商業(yè)文檔。 在一個企業(yè)內部,SOA服務通過一個扮演目錄列表(directory listing)角色的登記處(Registry)來進行維護。應用程序在登記處(Registry)尋找并調用某項服務。統(tǒng)一描述,定義和集成(UDDI, Universal Description, Definition, and Integration)是服務登記的標準。 每項SOA服務都有一個與之相關的服務品質(QoS, quality of service)。QoS的一些關鍵元素有安全需求(例如認證和授權),可靠通信(譯注:可靠消息是指,確保消息“僅且僅僅”發(fā)送一次,從而過濾重復信息。),以及誰能調用服務的策略。

新興變革

編輯 [2]??隨著全球信息化的浪潮,信息化產(chǎn)業(yè)不斷發(fā)展、延伸,已經(jīng)深入了眾多的企業(yè)及個人,SOA系統(tǒng)架構的出現(xiàn),將給信息化帶來一場新的革命。[3] 縱觀信息化建設與應用的歷程,盡管出現(xiàn)過XML(標準通用標記語言的子集)、Unicode、UML等眾多信息標準,但是許多異構系統(tǒng)之間的數(shù)據(jù)源仍然使用各自獨立的數(shù)據(jù)格式、元數(shù)據(jù)以及元模型,這是信息產(chǎn)品提供商一直以來形成的習慣。各個相對獨立的源數(shù)據(jù)集成一起,往往通過構建一定的數(shù)據(jù)獲取與計算程序來實現(xiàn),這樣的做法需要花費大量工作。信息孤島大量存在的事實,使信息化建設的ROI(投資回報率)大大降低,ETL成為集中這些異構數(shù)據(jù)的有效工具。 ETL常用于從源系統(tǒng)中提取數(shù)據(jù),將數(shù)據(jù)轉換為與目標系統(tǒng)相兼容的格式,然后將其裝載到目標系統(tǒng)中。數(shù)據(jù)經(jīng)過獲取、轉換、裝載后,要產(chǎn)生應用價值,還需另外的數(shù)據(jù)展現(xiàn)工具予以實現(xiàn),如此復雜的數(shù)據(jù)應用過程,必定產(chǎn)生高昂的應用成本。 結構化的數(shù)據(jù)管理尚可通過以上方法,予以實現(xiàn)其集成應用。在非結構化的內容方面,這些具有挑戰(zhàn)性的問題令人生畏。內容管理的應用方案基于不同的信息化應用系統(tǒng),而且大部分是縱向的以組織部門為界限的。在內容管理市場中,經(jīng)常使用來自不同廠商的產(chǎn)品來提供這些解決方案。即使是同一個廠商的產(chǎn)品,相互之間的功能也是經(jīng)常重疊,并且無法集成。 隨著信息化建設的深入,不同應用系統(tǒng)之間的功能界限已趨于模糊。同時企業(yè)資源計劃系統(tǒng)和協(xié)同商務系統(tǒng),又需要商業(yè)智能的分析展現(xiàn)數(shù)據(jù)提供用戶操作依據(jù)。 在激烈競爭且多變的市場環(huán)境下,企業(yè)的管理模式很難固化,應用傳統(tǒng)的信息化軟件,當企業(yè)要做出一些改動時需要面對巨大的挑戰(zhàn)。 SOA系統(tǒng)架構的出現(xiàn),信息化變革 微軟大中華區(qū)服務部總經(jīng)理辛兒倫介紹說,從上世紀60年代應用于主機的大型主機系統(tǒng),到80年代應用于PC的CS 架構,一直到90年代互聯(lián)網(wǎng)的出現(xiàn),系統(tǒng)越來越朝小型化和分布式發(fā)展。2000年WebService出現(xiàn)后,SOA被譽為下一代Web服務的基礎框架,已經(jīng)成為計算機信息領域的一個新的發(fā)展方向。 SOA的出現(xiàn)給傳統(tǒng)的信息化產(chǎn)業(yè)帶來新的概念,不再是各自獨立的架構形式,能夠輕松的互相聯(lián)系組合共享信息。 可復用以往的信息化軟件?;赟OA的協(xié)同軟件提供了應用集成功能,能夠將ERP、CRM、HR等異構系統(tǒng)的數(shù)據(jù)集成。 松散耦合方式,只要充分了解業(yè)務的進程,就可以不用編寫一行代碼,通過流程圖實現(xiàn)一套我們自己的信息系統(tǒng)。就像已經(jīng)給你準備好了磚瓦和水泥,只需要想好蓋什么樣的房子就可以輕松的蓋起。加快開發(fā)速度,并且減少了開發(fā)和維護的費用。軟件將所有的管理提煉成表單和流程,以記錄管理的內容,指定過程的流轉方向。 更簡便的信息和數(shù)據(jù)集成。信息集成功能可以將散落在廣域網(wǎng)和局域網(wǎng)上的文檔、目錄、網(wǎng)頁輕松集成,加強了信息的協(xié)同相關性。同時,復雜、成本高昂的數(shù)據(jù)集成,也變成了可以簡單且低成本實現(xiàn)的參數(shù)設定。創(chuàng)建了完全集成的信息化應用新領域。 在具體的功能實現(xiàn)上,SOA協(xié)同軟件所實現(xiàn)的功能包括了知識管理、流程管理、人事管理、客戶管理、項目管理、應用集成等,從部門角度看涉及了行政、后勤、營銷、物流、生產(chǎn)等。從應用思想上看,SOA協(xié)同軟件中的信息管理功能,全面兼顧了貫穿整個企業(yè)組織的信息化軟硬件投入。盡管各種IT技術可以用于不同的用途,但是信息管理并沒有任意地將信息分為結構化或者非結構化的部分,因此ERP等結構化管理系統(tǒng)并不是信息化建設的全部;同時,信息管理也沒有將信息化解決方案劃分為部門的視圖,因此僅僅以部分為界限去構建軟件應用功能的思想未必是不可撼動的?;赟OA的協(xié)同軟件與 ERP、CRM等傳統(tǒng)應用軟件相比,關鍵的不同在于它可以在合適的時間、合適的地點并且有正當理由向需要它提供服務的任何用戶提供服務。

為何選擇SOA

編輯

簡介介紹

不同種類的操作系統(tǒng),應用軟件,系統(tǒng)軟件和應用基礎結構(application infrastructure)相互交織,這便是IT企業(yè)的現(xiàn)狀。一些現(xiàn)存的應用程序被用來處理當前的業(yè)務流程(business processes),因此從頭建立一個新的基礎環(huán)境是不可能的。企業(yè)應該能對業(yè)務的變化做出快速的反應,利用對現(xiàn)有的應用程序和應用基礎結構(application infrastructure)的投資來解決新的業(yè)務需求,為客戶,商業(yè)伙伴以及供應商提供新的互動渠道,并呈現(xiàn)一個可以支持有機業(yè)務(organic business)的構架。SOA憑借其松耦合的特性,使得企業(yè)可以按照模塊化的方式來添加新服務或更新現(xiàn)有服務,以解決新的業(yè)務需要,提供選擇從而可以通過不同的渠道提供服務,并可以把企業(yè)現(xiàn)有的或已有的應用作為服務, 從而保護了現(xiàn)有的IT基礎建設投資。 如圖1的例子所示,一個使用SOA的企業(yè),可以使用一組現(xiàn)有的應用來創(chuàng)建一個供應鏈復合應用(supply chain composite application),這些現(xiàn)有的應用通過標準接口來提供功能。 服務架構

服務架構

為了實現(xiàn)SOA,企業(yè)需要一個服務架構,圖2顯示了一個例子: 圖2 在圖2中, 服務消費者(service consumer)可以通過發(fā)送消息來調用服務。這些消息由一個服務總線(service bus)轉換后發(fā)送給適當?shù)姆諏崿F(xiàn)。這種服務架構可以提供一個業(yè)務規(guī)則引擎(business rules engine),該引擎容許業(yè)務規(guī)則被合并在一個服務里或多個服務里。這種架構也提供了一個服務管理基礎(service management infrastructure),用來管理服務,類似審核,列表(billing),日志等功能。此外,該架構給企業(yè)提供了靈活的業(yè)務流程,更好地處理控制請求(regulatory requirement),例如Sarbanes Oxley(SOX),并且可以在不影響其他服務的情況下更改某項服務。

基礎結構

要運行,管理SOA應用程序,企業(yè)需要SOA基礎,這是SOA平臺的一個部分。SOA基礎必須支持所有的相關標準,和需要的運行時容器。圖3所示的是一個典型的SOA基礎結構。 SOAP, WSDL, UDDI WSDL,UDDI和SOAP是SOA基礎的基礎部件。WSDL用來描述服務;UDDI用來注冊和查找服務;而SOAP,作為傳輸層,用來在消費者和服務提供者之間傳送消息。SOAP是Web服務的默認機制,其他的技術為可以服務實現(xiàn)其他類型的綁定。一個消費者可以在UDDI注冊表(registry)查找服務,取得服務的WSDL描述,然后通過SOAP來調用服務。 WS-I Basic Profile WS-I Basic Profile,由Web服務互用性組織(Web Services Interoperability Organization)提供,是SOA服務測試與互用性所需要的核心構件。服務提供者可以使用Basic Profile測試程序來測試服務在不同平臺和技術上的互用性。 J2EE 和 .Net 盡管J2EE和.NET平臺是開發(fā)SOA應用程序常用的平臺,但SOA不僅限于此。像J2EE這類平臺,不僅為開發(fā)者自然而然地參與到SOA中來提供了一個平臺,還通過他們內在的特性,將可擴展性,可靠性,可用性以及性能引入了SOA世界。新的規(guī)范,例如 JAXB(Java API for XML Binding),用于將XML文檔定位到Java類;JAXR(Java API for XML Registry)用來規(guī)范對UDDI注冊表(registry)的操作;XML-RPC(Java API for XML-based Remote Procedure Call)在J2EE1.4中用來調用遠程服務,這使得開發(fā)和部署可移植于標準J2EE容器的Web服務變得容易,與此同時,實現(xiàn)了跨平臺(如。NET)的服務互用。

服務品質

在企業(yè)中,關鍵任務系統(tǒng)(mission-critical system,譯注:關鍵任務系統(tǒng)是指如果一個系統(tǒng)的可靠性對于一個組織是至關重要的,那么該系統(tǒng)就是該企業(yè)的關鍵任務系統(tǒng)。比如,電話系統(tǒng)對于一個電話促銷企業(yè)來說就是關鍵任務系統(tǒng),而文字處理系統(tǒng)就不那么關鍵了。)用來解決高級需求,例如安全性,可靠性,事物。當一個企業(yè)開始采用服務架構作為工具來進行開發(fā)和部署應用的時候,基本的Web服務規(guī)范,像WSDL,SOAP,以及UDDI就不能滿足這些高級需求。正如前面所提到的,這些需求也稱作服務品質(QoS,quality of services)。與QoS相關的眾多規(guī)范已經(jīng)由一些標準化組織(standards bodies)提出,像W3C(World Wide Web Consortium)和OASIS(the Organization for the Advancement of Structured Information Standards)。下面的部分將會討論一些QoS服務和相關標準。

安全質量

Web服務安全規(guī)范用來保證消息的安全性。該規(guī)范主要包括認證交換, 消息完整性和消息保密。該規(guī)范吸引人的地方在于它借助現(xiàn)有的安全標準,例如,SAML(as Security Assertion Markup Language)來實現(xiàn)web服務消息的安全。OASIS正致力于Web服務安全規(guī)范的制定。

可靠信度

在典型的SOA 環(huán)境中,服務消費者和服務提供者之間會有幾種不同的文檔在進行交換。具有諸如“僅且僅僅傳送一次”( once-and-only-once delivery),“最多傳送一次”( at-most-once delivery),“重復消息過濾”(duplicate message elimination),“保證消息傳送”(guaranteed message delivery)等特性消息的發(fā)送和確認,在關鍵任務系統(tǒng)(mission-critical systems)中變得十分重要。WS-Reliability 和 WS-ReliableMessaging是兩個用來解決此類問題的標準。這些標準都由OASIS負責。

策略計劃

服務提供者有時候會要求服務消費者與某種策略通信。比如,服務提供商可能會要求消費者提供Kerberos安全標示,才能取得某項服務。這些要求被定義為策略斷言(policy assertions)。一項策略可能會包含多個斷言。WS-Policy用來標準化服務消費者和服務提供者之間的策略通信。

控制能力

當企業(yè)著手于服務架構時,服務可以用來整合數(shù)據(jù)倉庫(silos of data),應用程序,以及組件。整合應用意味著例如異步通信,并行處理,數(shù)據(jù)轉換,以及校正等進程請求必須被標準化。在SOA中,進程是使用一組離散的服務創(chuàng)建的。BPEL4WS 或者 WSBPEL(Web Service Business Process Execution Language)是用來控制這些服務的語言。WSBPEL也由OASIS負責。

管理能力

隨著企業(yè)服務的增長,所使用的服務和業(yè)務進程的數(shù)量也隨之增加,一個用來讓系統(tǒng)管理員管理所有運行在多相環(huán)境下的服務的管理系統(tǒng)就顯得尤為重要。WSDM(Web Services for Distributed Management)規(guī)定了任何根據(jù)WSDM實現(xiàn)的服務都可以由一個WSDM適應(WSDM-compliant)的管理方案來管理。 其它的qos特性,比如合作方之間的溝通和通訊,多個服務之間的事務處理,都在WS-Coordination 和 WS-Transaction 標準中描述, 這些都是OASIS 的工作。

Web服務

在理解SOA和Web服務的關系上,經(jīng)常發(fā)生混淆。根據(jù)2003年4月的Gartner報道,Yefim V. Natis就這個問題是這樣解釋的:“Web服務是技術規(guī)范,而SOA是設計原則。特別是Web服務中的WSDL,是一個SOA配套的接口定義標準:這是Web服務和SOA的根本聯(lián)系?!睆谋举|上來說,SOA是一種架構模式,而Web服務是利用一組標準實現(xiàn)的服務。Web服務是實現(xiàn)SOA的方式之一。用Web服務來實現(xiàn)SOA的好處是你可以實現(xiàn)一個中立平臺,來獲得服務,而且隨著越來越多的軟件商支持越來越多的Web服務規(guī)范,你會取得更好的通用性。

SOA優(yōu)勢

SOA的概念并非什么新東西,SOA不同于現(xiàn)有的分布式技術之處在于大多數(shù)軟件商接受它并有可以實現(xiàn)SOA的平臺或應用程序。SOA伴隨著無處不在的標準,為企業(yè)的現(xiàn)有資產(chǎn)或投資帶來了更好的重用性。SOA能夠在最新的和現(xiàn)有的應用之上創(chuàng)建應用;SOA能夠使客戶或服務消費者免予服務實現(xiàn)的改變所帶來的影響;SOA能夠升級單個服務或服務消費者而無需重寫整個應用,也無需保留已經(jīng)不再適用于新需求的現(xiàn)有系統(tǒng)??偠灾?#xff0c;SOA以借助現(xiàn)有的應用來組合產(chǎn)生新服務的敏捷方式,提供給企業(yè)更好的靈活性來構建應用程序和業(yè)務流程。

發(fā)展效益

A. 平衡最初的舊系統(tǒng)投資(Leverage initial investment): 組織過去所投資的系統(tǒng)、軟硬體,如果能再利用等于賦予其新的價值,這也替組織降低成本并增加競爭力。 B. 基礎建設的便利性(Infrastructure Commoditization): 讓所有的應用程式能相互溝通(互通性)。 C. 快速的接近市場(Faster time-to-market): 服務的重復使用(再利用),來縮短過去的組織流程,更快速的提供服務來接近市場。 D. 減少支出(Reduce Cost): 服務的重復使用,可降低開發(fā)成本。因為開發(fā)新系統(tǒng)的成本,大部份比更新舊有系統(tǒng)來的花費大。 E. 減低風險(Risk mitigation): 開發(fā)新系統(tǒng)的風險遠大于更新舊系統(tǒng)。 F. 持續(xù)改善商業(yè)流程的循環(huán)(Continuous improvement cycle for business process) G. 中心流程處理(Process-centric processing)

主要優(yōu)勢

一,SOA可通過互聯(lián)網(wǎng)服務器發(fā)布,從而突破企業(yè)內網(wǎng)的限制,實現(xiàn)與供應鏈上下游伙伴業(yè)務的緊密結合。通過SOA架構,企業(yè)可以與其業(yè)務伙伴直接建立新渠道,建立新伙伴的成本得以降低。 二,SOA與平臺無關,減少了業(yè)務應用實現(xiàn)的限制。要將企業(yè)的業(yè)務伙伴整合到企業(yè)的“大”業(yè)務系統(tǒng)中,對其業(yè)務伙伴具體采用什么技術沒有限制。 三, SOA具有低耦合性特點,業(yè)務伙伴對整個業(yè)務系統(tǒng)的影響較低。在企業(yè)與各業(yè)務伙伴關系不斷發(fā)生變化的情況下,節(jié)省的費用會越來越多。 四, SOA具有可按模塊分階段進行實施的優(yōu)勢??梢猿晒σ徊皆僮鱿乱徊?#xff0c;將實施對企業(yè)的沖擊減少到最小。 五, SOA的實施可能并不具有成本顯著性。這要分三種情況加以討論: (1) 當企業(yè)從零開始構建業(yè)務系統(tǒng)時,采用SOA架構與不采用SOA架構成本可看做是相同的。 (2) 當企業(yè)業(yè)務發(fā)展或發(fā)生企業(yè)重組等變化而原有系統(tǒng)不能滿足需要,而需要重構業(yè)務系統(tǒng)時,采用SOA架構與不采用SOA架構成本可看做是相同的。 (3) 當企業(yè)業(yè)務發(fā)生緩慢變化并可預見到將來需要重構業(yè)務系統(tǒng)時,由于可以按模塊分階段逐步實施SOA以適應變化的需要,這樣企業(yè)不需一下投入一大筆經(jīng)費進行系統(tǒng)改造,而是根據(jù)企業(yè)業(yè)務發(fā)展情況和資金情況逐步投入,緩解了信息投入的壓力。

推動因素

IDC負責企業(yè)平臺研究的副總裁Michelle Bailey說,最近的IDC的研究表明,到2011年,18%以上的全部新服務器都將采用虛擬化技術,對于服務器硬件供應商來說,這是一個年收入達220億美元的市場機會。 對于企業(yè)來說,日益增長的挑戰(zhàn)是如何管理和保證虛擬環(huán)境的安全,因為隨著機構采用虛擬化技術,傳統(tǒng)的管理物理服務器蔓延的挑戰(zhàn)正在轉向管理虛擬機蔓延的挑戰(zhàn)。機構將需要可靠的、穩(wěn)定的、安全的和可管理的虛擬化解決方案。 綠色IT一直被列為頭號的戰(zhàn)略技術和2008年大多數(shù)機構的趨勢。據(jù)IDC稱,虛擬化的綠色的好處不僅是減少服務器占地面積,而是還包括減少碳排放量和耗電量。這些好處正在成為重要的好處。 據(jù)IDC對亞太地區(qū)綠色IT的調查,75%的受訪者對于IT部門沒有綠色IT政策。然而,80%以上的受訪者認為他們的IT供應商的“綠色”在未來幾年將更加重要。 虛擬化在這方面將發(fā)揮重要作用,一些企業(yè)將采用更環(huán)保的方法經(jīng)營業(yè)務以便贏得政府部門的合同。其它機構正在采用虛擬化技術以便得到節(jié)省電源的好處和減少碳排放量的獎勵。 同時,一些企業(yè)管理者和市場研究人士也對虛擬化的未來發(fā)展發(fā)表了看法: Avnet公司營銷經(jīng)理Michael Costigan: 盡管虛擬化有巨大的潛力,許多轉銷商不知道這種有潛力的新技術的實際狀況。機構能夠獲得顯著的能量和計算效率,同時提高技術的應用率和靈活性。 為了幫助你的客戶認識到這些好處并且為你的企業(yè)建立強大的市場占有率,你需要了解這個強大的新技術的細節(jié),了解需要采取什么有效手段識別和利用虛擬化的真正機會。 虛擬化正在用來解決范圍日益廣泛的商業(yè)目標和挑戰(zhàn),如服務器整合/保留、業(yè)務持續(xù)性、測試/開發(fā)優(yōu)化、軟件開發(fā)與發(fā)布以及桌面管理和安全。 人們對于虛擬化的未來顯然非常感興趣。但是,還有許多言過其實的宣傳。第一波x86服務器虛擬化的應用一直集中在服務器整合方面,重點是減少資本開支 (也就是服務器開支)以及電源和冷卻等運營開支。在未來的五年里,機構將超越服務器整合尋求如何利用虛擬化技術得到其它的好處,如重點減少運營成本(也就是物理管理成本)和讓基礎設施更有活力和更靈活,以便改善IT對于不斷變化的商業(yè)需求的反應能力。 分析師認為,虛擬化的下一個大事將是高可用性和災難恢復工具。災難恢復在歷史上一直是非常難管理的。虛擬化將提供一個節(jié)省成本的和容易管理的災難恢復解決方案。 虛擬桌面基礎設施、資源平衡和應用程序級高可用性可能是其它的未來應用實例。這些解決方案有一些技術的和經(jīng)濟的障礙。這些障礙必須要在虛擬化廣泛應用前克服。但是,考慮到虛擬化的重點,這些障礙已經(jīng)在開始克服。虛擬化還將成為SOA(面向服務的架構)技術應用的推動因素。[4]面向服務的體系結構基于這些實際活動或業(yè)務服務進行組織,而不是形成公司所維護的不同的信息豎井 (Silo)。通過實現(xiàn) SOA,可以帶來大量好處,包括以下各個方面:  *更高的業(yè)務和 IT 一致性 *基于組件的系統(tǒng) *松散耦合的組件和系統(tǒng) *基于網(wǎng)絡的基礎設施,允許分散于各地且采用不同技術的資源協(xié)同工作 *動態(tài)構建的按需應用程序 *更高的代碼重用率 *更好地標準化整個企業(yè)內的流程 *更易于集中企業(yè)控制

優(yōu)點

編輯 服務導向架構并不是一種全新的解決方案;相反,SOA是技術與架構的自然進化。系統(tǒng)架構一直在不斷進步,與商業(yè)保持高度一致。系統(tǒng)設計師與商家很早就認識到將技術與商業(yè)流程相協(xié)調的重要性,包括充分應用并合理化技術資源,以及為商業(yè)提供更好的支持。 SOA也在一定程度上源于早已有之的企業(yè)架構理論。企業(yè)架構對技術進行評估,但是更重要的是,它關注整個企業(yè)和全部的商業(yè)流程并提供了做出技術決策的背景信息。SOA工具則融合了互聯(lián)網(wǎng)技術,如HTTP和XML,以及綜合技術,如消息總線、轉譯技術和連接技術。[5]

總結

以上是生活随笔為你收集整理的SOA (面向服务的架构)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。