監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價咨詢管理系統(tǒng) | 工程設(shè)計管理系統(tǒng) | 甲方項目管理系統(tǒng) | 簽約案例 | 客戶案例 | 在線試用
X 關(guān)閉

構(gòu)建基于標準的SOA治理(AMT研究院 周瑛 編譯)

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

AMTeam.org

為了迅速靈活地構(gòu)建新的全局應(yīng)用,企業(yè)正全面實施面向服務(wù)的架構(gòu)(Service-Oriented Architecture,SOA),將軟件資產(chǎn)同項目、部門、合作伙伴連接起來。采用這種架構(gòu)后,服務(wù)多樣性大為豐富,使得SOA架構(gòu)內(nèi)的服務(wù)交互治理變得日益緊迫。通常企業(yè)會制定和實施統(tǒng)一的治理政策(見圖1)。

圖1  治理政策

這些治理政策也日益受到新出現(xiàn)標準的規(guī)范。這些標準首先出現(xiàn)在供應(yīng)商的產(chǎn)品中。逐漸地,企業(yè)開始采用SOA基礎(chǔ)設(shè)施解決方案,通過政策框架來治理SOA,保證全局SOA治理的一致性。這些框架在SOA環(huán)境中提供消息媒介功能,保證交互遵循關(guān)鍵的政策,促進企業(yè)范圍內(nèi)的服務(wù)共享和重用。

1. SOA的政策治理

隨著SOA在范圍和功能上的擴展,其治理需求也日益增加。治理可以通過SOA基礎(chǔ)設(shè)施解決方案實現(xiàn),它能夠保證運行時政策對SOA以及所有與SOA相關(guān)的交互進行治理。這些治理政策具備實現(xiàn)無縫SOA功能所需的元數(shù)據(jù)。

一般來說,現(xiàn)在SOA都是通過集成一系列的非標準解決方案進行治理的。例如,圖1所示的路由/消息能力(錯誤修復(fù)/負載平衡,有保證傳遞,優(yōu)先級傳遞,同步和異步消息傳遞等)一般通過一個面向消息的中間件(Message-Oriented Middleware,MOM)工具來加入到SOA中。雖然這種方式比較通用,但它違背了SOA的首要原則——即嚴格遵守標準。這種方法無法實現(xiàn)跨平臺互操作和普遍適用。

點對點的解決方案在Web Services項目的起始階段還是可行的,因為這時候還只需要執(zhí)行少數(shù)的核心標準(通常是指WSDL、SOAP、XML)就能夠取得成功。但隨著全局SOA的深入,需要遵循更多的標準以保證互操作性,同時保證有充分的治理(見圖2)。

圖2  治理政策的標準化

許多標準可以包含入各個WSDL或SOAP消息中,提高所有實體的自描述水平,促進動態(tài)的SOA治理。雖然這種完美的目標能夠形成完全遵循標準的SOA環(huán)境,但它并不能保證充分的SOA治理,因為它忽略了以下事實:

  • 平臺多樣性決定了不同的終點擁有不同的標準水平和自描述水平。
  • 大范圍的開發(fā)技巧集可以保證一些終點具備充分的自描述水平和標準水平,但仍會有一些終點缺乏必要的元數(shù)據(jù)進行松散耦合。
  • 隨著標準的成熟和發(fā)展,當前開發(fā)的服務(wù)在未來可能就不兼容了。

因此,企業(yè)正在尋求整套的SOA基礎(chǔ)設(shè)施解決方案,以實現(xiàn)對所有服務(wù)及服務(wù)交互的治理,不管自描述水平和標準水平如何。

2. 基于標準的治理框架

為了保證SOA治理在全局范圍內(nèi)的一致性,企業(yè)正傾向于采用SOA基礎(chǔ)設(shè)施解決方案,方案提供了治理的政策框架。這些框架在SOA環(huán)境中提供消息媒介,它們扮演政策執(zhí)行點的角色,保證關(guān)鍵政策的實施,促進企業(yè)范圍內(nèi)服務(wù)的共享和重用。

分布式網(wǎng)絡(luò)方法是SOA基礎(chǔ)設(shè)施最適合的架構(gòu)范例,政策執(zhí)行點像網(wǎng)絡(luò)路由器(而不是象代理那樣)一樣成倍增長,構(gòu)建完全可擴展的SOA。這有點類似于互聯(lián)網(wǎng)。在互聯(lián)網(wǎng)上,人們可以訪問任何一個站點,使用標準化的接口(HTML)來屏蔽后臺的異構(gòu)性。用戶無需知道服務(wù)器放在哪里,網(wǎng)站運行在什么平臺上,使用什么編程語言。用戶只需要知道URL。同樣,一個完全可擴展的SOA為所有服務(wù)消費者提供到任何Web服務(wù)的訪問,使用標準化的接口(WSDL)來屏蔽后臺的異構(gòu)性。

為了像互聯(lián)網(wǎng)那樣可靠和迅速,SOA的架構(gòu)也必須同互聯(lián)網(wǎng)類似。應(yīng)該使用分布式網(wǎng)絡(luò)原則,包括使用分布式路由器網(wǎng)絡(luò)(由SOAP優(yōu)化路由器構(gòu)成),保證企業(yè)范圍內(nèi)的互連,支持較高的消息量。

以網(wǎng)絡(luò)為中心的方法是最好的,因為它更具有擴展性,更加穩(wěn)定和統(tǒng)一。政策可以緩存在網(wǎng)絡(luò)中的路由器上,運行時可以運用這些政策進行治理。當一個路由器傳遞消息時,即是提供了一個優(yōu)化點,可在此時統(tǒng)一治理服務(wù)之間和服務(wù)內(nèi)部的所有交互。所有的政策都可以在網(wǎng)絡(luò)中執(zhí)行,而不僅僅是在各個單獨的終點,這樣就能創(chuàng)建“智能”服務(wù)網(wǎng)絡(luò)來實現(xiàn)多樣性終點之間的通信。

另外,成熟的SOA基礎(chǔ)設(shè)施解決方案(見圖3)通常采用服務(wù)合約的概念,這是一種針對特定消費者或提供者對而設(shè)定的政策。

圖3  SOA基礎(chǔ)設(shè)施解決方案

舉個例子來說,假如消費者A希望在SOA基礎(chǔ)設(shè)施環(huán)境中訪問Web Service B,那么他不需要直接發(fā)送消息到Web Service B,他只需要將消息發(fā)送到網(wǎng)絡(luò)上的任一路由器。這些路由器在本地緩存了必要的服務(wù)合約(合約C),可進行運行時的無縫執(zhí)行。路由器接收到消息之后,合約內(nèi)的政策就會在消息送往最終目標之前得到執(zhí)行。在這種情景下,合約C能夠規(guī)定這些政策的執(zhí)行:

  • 保證每個消息只向Web Service B傳遞一次,避免過多的消息造成不良影響
  • 將消息分配到“最高優(yōu)先級”的隊列,以便迅速傳遞
  • 訪問Kerberos服務(wù)器對消費者A進行認證,因為消費者A的部門使用Kerberos
  • 依據(jù)定義好的“白金”服務(wù)水平協(xié)議,跟蹤Web Service B的性能
  • 可靠地記錄交易相關(guān)的所有日志信息

3.基于網(wǎng)絡(luò)治理的其它好處

將治理任務(wù)放到網(wǎng)絡(luò)上加以執(zhí)行是SOA構(gòu)建和管理方面的一大進步。通過集中的政策定義與執(zhí)行,構(gòu)建一個包容終點多樣性的智能網(wǎng)絡(luò), 這樣就不需要將政策硬塞進各個終點,也不需要安裝、配置和維護政策代理。這種做法能夠帶來以下好處:

  • 一致性:重要的全局政策可以集中進行維護,并在網(wǎng)絡(luò)上加以執(zhí)行,它們適用于所有服務(wù)交互。這種方式保證了執(zhí)行的一致性,不管開發(fā)人員的技巧或項目情況如何。
  • 簡化變化管理:當政策升級或修改后,能夠?qū)嵤﹩我坏娜肿兓?,保證網(wǎng)絡(luò)上該政策的統(tǒng)一變化,不需要對每一個終點進行修改。
  • 大幅縮減管理費用:在各個終點進行基礎(chǔ)設(shè)施政策的升級、執(zhí)行和管理,這個工作量是巨大的。采用集中式的服務(wù)網(wǎng)絡(luò)后,這些管理任務(wù)將大幅降低。
  • 保證執(zhí)行:在所有政策執(zhí)行完畢之前,消息是無法路由到終點的,這保證了所有的政策都能夠得到執(zhí)行。
  • 可擴展性:在一個服務(wù)網(wǎng)絡(luò)中,可以在任何時刻創(chuàng)建和執(zhí)行額外的政策,并在所有服務(wù)中進行共享。任何功能——BPM流程、高級應(yīng)用功能,EAI交易等——都可以作為一項Web Service,在網(wǎng)絡(luò)上加以執(zhí)行。

4. 結(jié)論

網(wǎng)絡(luò)標準協(xié)議(例如HTTP、FTP、SMTP)具有廣泛適用性,但它們在本質(zhì)上缺乏對可靠消息傳輸模式的支持,而這正是一些高級應(yīng)用所需要的?;贛OM的企業(yè)服務(wù)總線(Enterprise Services Buses,ESBs)提供可靠的消息傳輸,但又缺乏普遍適用性,并且過于復(fù)雜,無法實現(xiàn)大規(guī)模增長。而基于標準的SOA基礎(chǔ)設(shè)施則同時兼具上述兩個特點。

 

發(fā)布:2007-03-25 10:12    編輯:泛普軟件 · 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在線咨詢