監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價咨詢管理系統(tǒng) | 工程設(shè)計管理系統(tǒng) | 簽約案例 | 購買價格 | 在線試用 | 手機APP | 產(chǎn)品資料
X 關(guān)閉

解析面向服務(wù)架構(gòu)(SOA)十大設(shè)計原則

申請免費試用、咨詢電話:400-8352-114

來源:泛普軟件

日前國外網(wǎng)站報道介紹了面向服務(wù)架構(gòu)(SOA)的基本原則,提出了公共接口與內(nèi)部實現(xiàn)要有明確界限等原則。雖然這些原則并不是絕對的真理,但可作為一個應(yīng)用開發(fā)參考。

一、明確的邊界

通過跨越定義明確的邊界進行顯式消息傳遞,服務(wù)得以彼此交互。有時候,跨越服務(wù)邊界可能要耗費很大的成本,這要視地理、信任或執(zhí)行因素而定。邊界是指服務(wù)的公共接口與其內(nèi)部專用實現(xiàn)之間的界線。服務(wù)的邊界通過 WSDL 發(fā)布,可能包括說明特定服務(wù)之期望的聲明。

二、服務(wù)共享和約和架構(gòu)

服務(wù)交互應(yīng)當(dāng)只以服務(wù)的策略、架構(gòu)和基于合約的行為為基礎(chǔ)。服務(wù)的合約通常使用 WSDL 定義,而服務(wù)聚合的合約則可以使用 BPEL 定義(進而,對聚合的每個服務(wù)使用 WSDL)。服務(wù)使用者將依靠服務(wù)的合約來調(diào)用服務(wù)及與服務(wù)交互。鑒于這種依賴性,服務(wù)合約必須長期保持穩(wěn)定。在利用 XML 架構(gòu) (xsd:any) 和 SOAP 處理模型(可選標(biāo)頭)的可擴展性的同時,合約的設(shè)計應(yīng)盡可能明確。

三、策略驅(qū)動

盡管它往往被認(rèn)為是最不為人所了解的原則,但對于實現(xiàn)靈活的 Web 服務(wù),它或許是最有力的。單純依靠 WSDL 無法交流某些業(yè)務(wù)交互要求??梢允褂貌呗员磉_式將結(jié)構(gòu)兼容性(交流的內(nèi)容)與語義兼容性(如何交流消息或者將消息交流給誰)分隔開來。

四、自治

服務(wù)是獨立進行部署、版本控制和管理的實體。開發(fā)人員應(yīng)避免對服務(wù)邊界之間的空間進行假設(shè),因為此空間比邊界本身更容易改變。

五、采用可傳輸?shù)膮f(xié)議格式,而不是API

通常,服務(wù)提供商基于某種傳輸協(xié)議(例如HTTP)提供服務(wù),而服務(wù)消費者只能通過另一種不同的協(xié)議(比如MQ)通信。因此,也許需要在服務(wù)提供商與消費者之間建立一座異步起動同步運行的連接橋梁,超越HTTP和Java Messaging Service消息服務(wù)(JMS)等協(xié)議.從技術(shù)角度講,Java Messaging Service消息服務(wù)(JMS)并不是一種傳輸協(xié)議,而是一組供應(yīng)商中立(vendor-neutral)的通信APIs。

六、面向文檔

消息被構(gòu)造為“純文本的”XML文檔(換句話說,數(shù)據(jù)的格式只對XML有意義)。 消息通常用于傳輸業(yè)務(wù)文檔,比如購買訂單、發(fā)票和提單。這種交互類型與同步消息排隊系統(tǒng)的兼容性很好,比如MQ Series、MSMQ、JMS、TIBCO、IMS等等。

七、松偶合

服務(wù)之間要求最小的依賴性,只要求它們之間能夠相互知曉。

八、符合標(biāo)準(zhǔn)

當(dāng)通過Web的服務(wù)實現(xiàn)時,最原始的(基本的)面向服務(wù)的架構(gòu)(SOA)的模型僅僅提供了很低程度上的關(guān)于可靠性、安全性以及事務(wù)管理的標(biāo)準(zhǔn)化機制。第二代的技術(shù)條件和框架,如WS-ReliableMessaging規(guī)范、 WS-Security規(guī)范和WS-Coordination規(guī)范 (與WS-AtomicTransaction規(guī)范和WS-BusinessActivity規(guī)范相聯(lián)系),它們試圖以工業(yè)標(biāo)準(zhǔn)的方式定位存在的缺陷。

九、獨立軟件供應(yīng)商

向SOA的轉(zhuǎn)變正在深刻改變了經(jīng)濟現(xiàn)實??蛻魝儠诖侠淼馁M用以及不必重新進行投資就能改進業(yè)務(wù)的能力。因此,獨立軟件供應(yīng)商沒有選擇,只能使自己的業(yè)務(wù)更加靈活,以期讓自己的客戶也變得同樣靈活。于是,面向服務(wù)不僅是簡單的在現(xiàn)有的、緊耦合的、復(fù)雜的、不靈活的以及非組件化的業(yè)務(wù)功能上添加基于標(biāo)準(zhǔn)的接口。更重要的是,為了兌現(xiàn)SOA的承諾,獨立軟件供應(yīng)商必須改變他們構(gòu)建、打包、銷售、交付、管理和支持自身產(chǎn)品的方式。

十、元數(shù)據(jù)驅(qū)動

開發(fā)元數(shù)據(jù)本身并不是元數(shù)據(jù)驅(qū)動應(yīng)用程序的本意。使用元數(shù)據(jù)來驅(qū)動服務(wù)在系統(tǒng)邊界的傳播是一個更為正確的方法。 (CBISMB)

發(fā)布:2007-04-24 09:43    編輯:泛普軟件 · xiaona    [打印此頁]    [關(guān)閉]
相關(guān)文章:
廣州OA系統(tǒng)
聯(lián)系方式

成都公司:成都市成華區(qū)建設(shè)南路160號1層9號

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓

咨詢:400-8352-114

加微信,免費獲取試用系統(tǒng)

QQ在線咨詢

泛普廣州OA快博其他應(yīng)用

廣州OA軟件 廣州OA新聞動態(tài) 廣州OA信息化 廣州OA快博 廣州OA行業(yè)資訊 廣州軟件開發(fā)公司 廣州門禁系統(tǒng) 廣州物業(yè)管理軟件 廣州倉庫管理軟件 廣州餐飲管理軟件 廣州網(wǎng)站建設(shè)公司