面向服務(wù)的架構(gòu)(Service-OrientedArchitecture赏僧,SOA)自提出到被普遍認(rèn)可和接受驾中,再到目前應(yīng)用普及和成熟已有近20年時間,在領(lǐng)域的應(yīng)用經(jīng)歷了WebService接口、企業(yè)服務(wù)總線(ESB)工窍、服務(wù)管控等不同發(fā)展階段。目前云計算取试、流程銀行等新概念又給了SOA更廣泛的發(fā)展空間。國際權(quán)威機(jī)構(gòu)Gartner認(rèn)為怀吻,SOA是大型企業(yè)信息現(xiàn)代化的根本瞬浓。
當(dāng)前,國內(nèi)眾多大型企業(yè)經(jīng)過多年的持續(xù)建設(shè)蓬坡,ESB猿棉、BPM、ECM等眾多基礎(chǔ)技術(shù)平臺建設(shè)和集成架構(gòu)體系日趨完善屑咳,打造了比較完備的SOA基礎(chǔ)設(shè)施萨赁。但是相應(yīng)的服務(wù)體系還相對滯后,未能發(fā)揮出SOA基礎(chǔ)設(shè)施的真正價值兆龙,具體主要表現(xiàn)為:1杖爽、偏重于技術(shù)集成而非服務(wù)集成,系統(tǒng)間以交易接口互聯(lián)紫皇,普遍存在同類接口重復(fù)開發(fā)的現(xiàn)象慰安;2、應(yīng)用系統(tǒng)缺少有效方法知道有哪些可用服務(wù)聪铺,以及如何獲取和使用這些服務(wù)化焕。同時企業(yè)對SOA價值也認(rèn)識不足,缺少必要的服務(wù)治理工具铃剔。因此撒桨,通過開展SOA治理脂倦,優(yōu)化集成架構(gòu),建立企業(yè)服務(wù)體系元莫,為業(yè)務(wù)系統(tǒng)提供更豐富的業(yè)務(wù)和技術(shù)服務(wù)赖阻,是落實(shí)企業(yè)總體架構(gòu)目標(biāo)、推動業(yè)務(wù)可持續(xù)發(fā)展的必由之路踱蠢。
SOA服務(wù)體系應(yīng)包括服務(wù)標(biāo)準(zhǔn)和規(guī)范火欧、服務(wù)生命周期治理、服務(wù)治理平臺和工具三個方面茎截。
服務(wù)標(biāo)準(zhǔn)和規(guī)范:
用于指導(dǎo)項(xiàng)目組進(jìn)行服務(wù)的分析設(shè)計開發(fā)測試等苇侵,包括服務(wù)必須遵循的技術(shù)標(biāo)準(zhǔn)和服務(wù)開發(fā)的步驟規(guī)范指南等,是應(yīng)用系統(tǒng)作為服務(wù)提供者和服務(wù)使用者必須遵循的企锌,保證服務(wù)在整個生命周期具有一致的統(tǒng)一的規(guī)范和技術(shù)標(biāo)準(zhǔn)要求榆浓。
服務(wù)標(biāo)準(zhǔn)和規(guī)范主要包括服務(wù)策略、服務(wù)技術(shù)標(biāo)準(zhǔn)撕攒、分析設(shè)計原則和服務(wù)開發(fā)步驟規(guī)范四個方面:
1陡鹃、服務(wù)策略是實(shí)施服務(wù)治理的基本原則和指導(dǎo)方針,在技術(shù)和組織層面定義了那些做法是正確的抖坪。一般的服務(wù)策略包括服務(wù)安全策略萍鲸、服務(wù)的互操作性、服務(wù)的質(zhì)量和等級協(xié)議策略擦俐、服務(wù)的語義數(shù)據(jù)和schema治理策略脊阴、服務(wù)可靠性策略、服務(wù)版本策略蚯瞧。
2嘿期、服務(wù)標(biāo)準(zhǔn)主要包括:XML Schema標(biāo)準(zhǔn)、WSDL標(biāo)準(zhǔn)埋合、SOAP標(biāo)準(zhǔn)备徐、命名空間標(biāo)準(zhǔn)、報文編碼標(biāo)準(zhǔn)等饥悴。
3坦喘、服務(wù)分析和設(shè)計遵循面向服務(wù)架構(gòu)的設(shè)計原則盲再,包括:標(biāo)準(zhǔn)化的服務(wù)契約西设、服務(wù)松耦合、服務(wù)抽象答朋、服務(wù)可重用贷揽、服務(wù)自主性、服務(wù)無狀態(tài)梦碗、服務(wù)可發(fā)現(xiàn)禽绪、服務(wù)可組合蓖救。
4、服務(wù)開發(fā)規(guī)范即SOAD規(guī)范印屁,主要包括服務(wù)分析(分析業(yè)務(wù)需求循捺、找出自動化系統(tǒng)、識別功能需求雄人、識別候選服務(wù))从橘、服務(wù)設(shè)計(組合SOA、設(shè)計具體服務(wù))础钠、服務(wù)實(shí)現(xiàn)(服務(wù)開發(fā)恰力、服務(wù)測試、服務(wù)部署)三個主要步驟旗吁。在進(jìn)行 SOAD 開發(fā)時踩萎,一般建議采用迭代的方式進(jìn)行開發(fā)。
服務(wù)生命周期治理
參考共享服務(wù)生命周期(Shared Service Lifecycle很钓,SSLC)模型香府,完整的服務(wù)生命周期包括服務(wù)識別、服務(wù)設(shè)計码倦、服務(wù)實(shí)現(xiàn)回还、服務(wù)發(fā)布、服務(wù)部署叹洲、服務(wù)管控柠硕、服務(wù)優(yōu)化七個階段。其中运提,服務(wù)識別蝗柔、服務(wù)設(shè)計、服務(wù)實(shí)現(xiàn)屬于設(shè)計期民泵;服務(wù)發(fā)布癣丧、服務(wù)部署、服務(wù)管控栈妆、服務(wù)優(yōu)化屬于運(yùn)行期胁编。服務(wù)分析階段包括需求識別和計劃,以及對服務(wù)的評估和演化鳞尔。
服務(wù)治理是對服務(wù)全生命周期的管理過程嬉橙,可分為服務(wù)設(shè)計期治理、服務(wù)運(yùn)行期治理和持續(xù)治理三種類型寥假。
服務(wù)設(shè)計期目標(biāo)和原則:1市框、信息管理方面包括:架構(gòu)解決方案審查、服務(wù)設(shè)計審查糕韧、開發(fā)到測試的審查枫振、測試到交付用戶的審查喻圃、對服務(wù)簽發(fā)認(rèn)證、確保共享粪滤、提供生命周期管理斧拍、確保服務(wù)是可發(fā)現(xiàn)的;2杖小、策略管理方面包括:策略定義饮焦、策略關(guān)聯(lián)應(yīng)用、策略執(zhí)行窍侧;3县踢、合約管理包括:合約定義、商談伟件、合約合法性硼啤;4、質(zhì)量管理包括:標(biāo)準(zhǔn)化的服務(wù)質(zhì)量協(xié)議斧账。
服務(wù)運(yùn)行期目標(biāo)和原則:1谴返、系統(tǒng)記錄:確保和記錄在運(yùn)行期間不同應(yīng)用或組件之間的信息交換;2咧织、服務(wù)管理系統(tǒng):控管和配置服務(wù)以及運(yùn)行階段的各種組件嗓袱、根據(jù)異常狀況重新配置環(huán)境;3习绢、服務(wù)監(jiān)控系統(tǒng):采集運(yùn)行階段的指標(biāo)渠抹、在環(huán)境中提供可視化的圖表顯示;4闪萄、服務(wù)質(zhì)量保證系統(tǒng):增強(qiáng)通訊中的消息和運(yùn)行階段的策略梧却、安全性、可靠性败去、事務(wù)性放航、稽核等。
持續(xù)治理目標(biāo)和原則:1圆裕、服務(wù)資產(chǎn)管理:評估和分析服務(wù)倉庫广鳍、識別服務(wù)可重用的機(jī)率、協(xié)助進(jìn)行資產(chǎn)整合吓妆、減少冗余的服務(wù)功能赊时。
服務(wù)治理協(xié)作描述了在服務(wù)提供方、服務(wù)治理平臺(管理和監(jiān)控)耿战、服務(wù)請求方之間蛋叼,建立規(guī)范的服務(wù)生命周期管理流程焊傅,明確各方的職責(zé)分工剂陡,為服務(wù)使用和管理的提供指導(dǎo)狈涮。
服務(wù)治理平臺設(shè)計
服務(wù)治理平臺是保證實(shí)施有效的服務(wù)治理的技術(shù)平臺工具和環(huán)境,它從策略鸭栖、標(biāo)準(zhǔn)歌馍、步驟、指數(shù)等多個方面體現(xiàn)和包含了服務(wù)治理的過程晕鹊,是服務(wù)體系架構(gòu)實(shí)施服務(wù)治理的重要支撐工具和平臺松却。
服務(wù)治理平臺包括4個主要部分組成:服務(wù)存儲庫(Repository)、服務(wù)注冊庫(Registry)溅话、服務(wù)運(yùn)行監(jiān)控和服務(wù)數(shù)據(jù)接口晓锻。
服務(wù)存儲庫主要包括服務(wù)資源管理、策略管理飞几、系統(tǒng)記錄三大部分砚哆,其中服務(wù)資源管理是對在服務(wù)設(shè)計期間產(chǎn)生的資源文件(WSDL、Schema屑墨、Policy躁锁、SCA等)進(jìn)行上傳、下載卵史、編輯战转、管理、分析等以躯;策略管理是對服務(wù)在設(shè)計期間的交付物做校驗(yàn)和檢查的依據(jù)管理槐秧,對服務(wù)運(yùn)行期間的安全、可靠忧设、事務(wù)性色鸳、SLA等進(jìn)行規(guī)范和策略模板的定義和管理;系統(tǒng)記錄主要包括對各種日志信息的管理见转,涉及消息命雀、性能、事件日志等斩箫。
服務(wù)注冊庫主要包括服務(wù)注冊吏砂、服務(wù)查找、服務(wù)生命周期管理乘客。服務(wù)注冊包括對服務(wù)提供者注冊狐血、服務(wù)請求者注冊、服務(wù)信息的注冊和維護(hù)易核;服務(wù)查找能夠校驗(yàn)相似服務(wù)匈织、根據(jù)查詢條件展現(xiàn)服務(wù)信息及其依賴的資源;服務(wù)生命周期管理包含服務(wù)版本管理、服務(wù)狀態(tài)維護(hù)和/降級等缀匕。
服務(wù)運(yùn)行監(jiān)控主要包括:系統(tǒng)管理纳决、監(jiān)控管理、指數(shù)統(tǒng)計分析乡小。系統(tǒng)管理用于對使用平臺的用戶阔加、及其角色、相關(guān)授權(quán)進(jìn)行管理满钟;監(jiān)控管理包括對服務(wù)提供者監(jiān)控胜榔、服務(wù)日志或異常信息監(jiān)控、服務(wù)事件信息的監(jiān)控湃番、對出現(xiàn)異常信息的監(jiān)控規(guī)則以及通知反饋信息的管理夭织;指數(shù)統(tǒng)計分析包括服務(wù)的SLA指數(shù)、QoS指數(shù)吠撮、以及體現(xiàn)其他重要的指數(shù)信息的統(tǒng)計分析等摔癣。
服務(wù)數(shù)據(jù)接口包括服務(wù)資源接口、服務(wù)策略接口纬向、服務(wù)監(jiān)控信息推送接口择浊、統(tǒng)計分析記錄接口。服務(wù)資源接口用于提供給服務(wù)請求方逾条,根據(jù)該接口獲得服務(wù)的基本信息琢岩、服務(wù)相關(guān)資源等,是服務(wù)提供方給服務(wù)請求方請求服務(wù)的契約文件师脂;服務(wù)策略接口包括服務(wù)SLA和QoS等信息担孔,服務(wù)提供方和服務(wù)請求方都需要通過該接口獲得服務(wù)的相關(guān)契約和策略,從而保證服務(wù)提供方能夠按照注冊服務(wù)時約束的策略進(jìn)行處理吃警,服務(wù)請求方能夠根據(jù)接口使用滿足要求的方式請求服務(wù)糕篇;服務(wù)監(jiān)控信息推送接口提供給服務(wù)提供方,要求服務(wù)提供方按照此接口提供服務(wù)相關(guān)請求日志酌心、異常故障等統(tǒng)計監(jiān)控信息,并將這些信息推送到服務(wù)管理平臺拌消;統(tǒng)計分析記錄接口是服務(wù)管理平臺的接口,可以提供給外部系統(tǒng)使用查看瀏覽服務(wù)相關(guān)統(tǒng)計分析情況等安券。