張斌,張達敏,馬清鑫
?。ㄙF州大學 大數(shù)據(jù)與信息工程學院,貴州 貴陽 550025)
摘要:針對眾多IT企業(yè)在提供IT服務時缺乏合理的管理流程、服務管理能力低下的問題,設計了一個基于ITIL的SOA系統(tǒng)架構。架構采用分層設計的方法,服務資源由服務臺來統(tǒng)一調(diào)配,服務的訪問依靠ESB(企業(yè)服務總線)來完成。最后,將該架構應用于系統(tǒng)的開發(fā),結果表明,該架構具有擴展性好、移植性強的特點。用該架構指導企業(yè)對服務系統(tǒng)進行構建,可以極大地提高企業(yè)的服務質(zhì)量與服務管理能力。
關鍵詞:IT服務;ITIL;SOA;服務總線
中圖分類號:TP311.5文獻標識碼:ADOI: 10.19358/j.issn.1674-7720.2017.06.021
引用格式:張斌,張達敏,馬清鑫. 基于ITIL的SOA架構研究與應用[J].微型機與應用,2017,36(6):68-71.
0引言
*基金項目:貴州省科技廳省校合作項目(黔科合計省合[2014]7002號)傳統(tǒng)IT服務部門在采用面向服務的系統(tǒng)架構(ServiceOriented Architecture,SOA)進行企業(yè)系統(tǒng)架構設計時,往往只專注與技術,采用被動服務的方式,故障的解決主要依靠一些關鍵技術人員或工程師,由于缺少相應的服務管理和知識積累,關鍵人員的流動甚至會造成部門業(yè)務的中斷。很多企業(yè)獲得的效益與投入的成本不成正比,原因可能不是技術落后,而是缺乏行之有效的管理流程。
因此,在企業(yè)系統(tǒng)的構建上要有新的思路,變被動服務為主動服務,甚至能夠先知先覺,提前預測到可能會出現(xiàn)的問題,從而能主動處理問題。而信息技術基礎架構庫(Information Technology Infrastructure Library,ITIL)則能夠?qū)⑦@種可能變成現(xiàn)實。本文在研究在ITIL規(guī)范及SOA架構的基礎上設計了基于ITIL的SOA系統(tǒng)架構,并將其實際應用于公共設施巡查系統(tǒng)中,從而驗證本文設計思路的可行性。
1相關技術介紹
1.1ITIL簡介
ITIL可以幫助企業(yè)對IT系統(tǒng)的規(guī)劃、研發(fā)、實施和運營進行有效的管理,它以流程為導向,以客戶滿意度和服務品質(zhì)為核心,宗旨是提高IT資源的利用率和質(zhì)量[12]。
IT服務管理(ITSM)是ITIL最核心的模塊,分為十個流程和一個職能(服務臺職能)。實施ITSM主要目標是提供高質(zhì)量、低成本的服務。而服務質(zhì)量的優(yōu)劣不僅僅體現(xiàn)在技術上,更重要的是體現(xiàn)在流程和服務臺的建設上。服務臺是連接服務提供方與用戶的紐帶,它與服務管理的眾多流程都有密切的關系,為用戶提供問題、變更、服務級別、發(fā)布、配置等管理的接口[3]。服務臺是ITSM的關鍵組成部分。因此,企業(yè)在實施ITIL的過程中,要充分理解服務臺的職能,并加大建設力度。
1.2SOA簡介
SOA是一種“抽象的、松散耦合的細粒度軟件架構”[45],是一種面向接口的軟件架構。SOA由服務提供者、服務請求者、服務代理者三個實體組成,構成SOA的基礎部件主要有WSDL、UDDI和SOAP[6]。
服務提供者的功能是發(fā)布服務到服務代理,并且執(zhí)行服務消費者的服務請求;服務消費者是服務請求的發(fā)起者,在向服務提供者發(fā)送請求時,要先向服務代理查詢是否有滿足條件的服務,然后根據(jù)服務信息綁定和調(diào)用服務;服務代理主要是接受服務提供者的注冊,并對服務進行整理以方便服務請求者查詢。網(wǎng)絡服務描述語言(Web Service Definition Language,WSDL)可以借助XML對服務進行描述;統(tǒng)一描述、發(fā)現(xiàn)和整合規(guī)范(Universal Description Discovery and Integration,UDDI)用于注冊和查找服務[7];簡單對象訪問協(xié)議(Simple Object Access Protocol,SOAP)主要是在請求者和服務提高者之間傳遞消息。完成一個請求,首先要在UDDI注冊表中查詢服務,并取得服務的WSDL描述,最后由SOAP調(diào)用服務。
SOA軟件結構如圖1所示。
2基于ITIL的SOA架構
實施ITIL的目的是提高服務的質(zhì)量,SOA的核心理念是面向服務,因此將兩者結合進行系統(tǒng)架構的設計,不僅延續(xù)了傳統(tǒng)架構以技術為核心的做法,而且在架構設計時兼顧了業(yè)務流程,同時又可以發(fā)揮人員的能動性(可由服務臺調(diào)配)。
2.1服務臺事件處理流程設計
服務臺作為溝通IT服務部門和用戶的唯一通道,其功能與事務處理流程也最為復雜。本文設計的服務臺事件處理流程如下。
首先,用戶向服務臺提出事故處理申請,服務臺將用戶信息進行登記,然后事件管理產(chǎn)生一個事件且處于待處理狀態(tài)。此時服務臺會根據(jù)事件的類型、事件處理的難易程度進行判斷。如果服務臺可以自行處理,則其直接處理,處理完成后反饋給用戶,得到用戶確定后就可以關閉事件。如果服務臺不能直接處理,則將事件分派給二線技術人員進行處理。此時,二線某技術人員可能不會接受該任務,則事件重新回到待處理的狀態(tài),服務臺會重新進行分派。如果二線技術人員直接接受服務臺的分派任務,則技術員會根據(jù)事件的具體情況制定解決的方案,方案制定完成后,技術員會將解決方案提交服務臺,由服務臺進行方案錄庫,以便以后類似問題的處理。在技術員將方案提交的同時就可以對事件進行處理,此時事件可能處于兩種狀態(tài):一種是事件還未處理,則需要等待技術員盡快解決;二是事件已經(jīng)處理,則將處理結果提交服務臺。服務臺會根據(jù)技術員的處理結果進行確認,服務臺確認后就可以對用戶進行回訪。服務臺會告知用戶請求已經(jīng)解決,用戶會根據(jù)服務臺的提示進行確認,如果故障排除,則服務臺將該事件關閉,如果故障仍未解決,則需要重新解決,直到故障被完全修復。服務臺的事件處理流程如圖2所示。
2.2系統(tǒng)架構設計
本文進行系統(tǒng)架構的設計時采用分層設計的思想,主要分為五層,分別是應用層、服務提供層、服務組合層、組件層和數(shù)據(jù)層[58]。每一個服務都是通過ESB(企業(yè)服務總線)進行連接集成,系統(tǒng)架構整體上具有“層內(nèi)高內(nèi)聚,層間松耦合”的特點?;贗TIL的SOA架構模型如圖3所示。
應用層: 主要是一些用戶客戶端或者其他的智能終端設備,用戶可以根據(jù)自己的實際需求在客戶端界面上進行操作,并將服務請求發(fā)送給服務端。從而可以將服務端底層抽象的用戶數(shù)據(jù)信息直觀地表現(xiàn)出來,以方便用戶進行查看。
服務提供層:主要是ITIL服務管理模塊,是用戶與服務提供方進行交互的紐帶。該層的工作原理為:首先接收用戶的請求信息,服務臺可以根據(jù)用戶的請求將任務分派給相應的技術人員進行處理。另外,服務臺會根據(jù)事件的處理情況,對事件發(fā)生的原因、解決的辦法、后期可能會出現(xiàn)的問題等進行記錄并進行存檔,以方便以后對類似事件的處理。當要想從源頭上徹底解決用戶遇到的問題時,需要更改系統(tǒng)的硬件配置或者對軟件系統(tǒng)進行較大程度的改進,不僅需要配置管理來解決相關的問題,還需要變更管理來控制變更的幅度,確保變更順利進行。如果處理的變更較大,則需要發(fā)布管理來對關鍵硬件或主要軟件進行打包或者批處理一組變更,以確保發(fā)布的成功。另外,服務臺可以根據(jù)用戶的變更請求進行變信息登記,以針對用戶需求進行變更。
服務總線:是SOA架構圖3基于ITIL的SOA架構圖的基礎,它可以將架構中的所有服務進行連接[7]。另外,服務總線中的代理服務模塊還具有服務注冊的功能,用戶可以通過服務總線進行服務查詢,服務提供者通過服務總線進行服務注冊。通過服務提供層的服務調(diào)度模塊,可以調(diào)用已經(jīng)注冊的服務。權限管理主要是可以對用戶的訪問權限進行定義,不同的操作人員分配不同的角色。安全管理可以保證傳輸?shù)椒湛偩€中消息的安全可靠性。
工作流引擎是該層的一個重要模塊,它可以將應用程序的不同功能單元通過服務之間定義的接口和契約聯(lián)系起來,使各個服務可以以一種統(tǒng)一和通用的方式進行交互。
服務組合層:該層的作用是進行服務的整合,服務可以分為粗粒度服務和細粒度服務。原子服務是以實體為核心的細粒度服務;組合服務是將原子服務進行組合而成,屬于粗粒度服務[9]。原子服務一般不能單獨使用,因此需要將原子服務整合為組合服務。組合服務通過服務總線進行發(fā)布,以便對各個服務進行查詢與訪問。
組件層:該層主要由產(chǎn)品公共組件、行業(yè)公共組件和核心框架組成。在核心框架中插件框架是遵循一定規(guī)范的應用程序接口編寫的程序,它可以根據(jù)不同的用戶對系統(tǒng)的功能進行擴展,以實現(xiàn)系統(tǒng)功能的多樣性。組件框架可以對數(shù)據(jù)和方法進行簡單封裝,使系統(tǒng)進行真正的面向?qū)ο笤O計。通過插件框架和組件框架,可以使系統(tǒng)具有兼容性好、易于移植的特點。另外,系統(tǒng)開發(fā)中會有眾多的數(shù)據(jù)需要處理,元數(shù)據(jù)在系統(tǒng)中是不可或缺的。當用戶需要獲得數(shù)據(jù)信息時,可以由元數(shù)據(jù)引擎進行搜索,并將相應的數(shù)據(jù)信息反饋給用戶。
產(chǎn)品公共組件中的規(guī)則引擎可以視為一個組件,是外部Java程序調(diào)用規(guī)則包的一組Java類,主要是將業(yè)務決策從應用程序代碼中分離出來,它可以接受數(shù)據(jù)輸入,解釋業(yè)務規(guī)則并作出業(yè)務決策。
數(shù)據(jù)層: 主要完成數(shù)據(jù)信息的存儲,例如異常信息數(shù)據(jù)庫、公共設施數(shù)據(jù)庫、系統(tǒng)配置數(shù)據(jù)庫、問題記錄數(shù)據(jù)庫以及各種人員信息庫等。數(shù)據(jù)層主要功能是實現(xiàn)對各種數(shù)據(jù)信息的存儲、刪除、更改。另外,元數(shù)據(jù)搜素引擎對數(shù)據(jù)搜索查詢也主要是在數(shù)據(jù)層進行。
3架構應用
本文在上述系統(tǒng)架構的基礎上開發(fā)了一套公共設施巡查系統(tǒng),公共設施巡查系統(tǒng)的主要角色有服務臺、技術部和管理員三個,該系統(tǒng)的重點是服務臺的建設,它可以實現(xiàn)對數(shù)據(jù)資源和人員進行統(tǒng)一調(diào)配。服務臺首先要實現(xiàn)的功能是請求的接收與請求的登記;其次是問題的分派、問題的跟蹤與回訪;最后是對故障出現(xiàn)原因、解決方法以及還存在的故障隱患進行記錄,以方便后期的查詢與參考。
服務臺功能實現(xiàn)如圖4所示,在服務臺功能頁面左側得菜單欄是用戶請求所處的狀態(tài),主要有未分派、未處理、位回訪等五種狀態(tài);頁面的右側是服務臺人員可以對用戶請求進行的操作,主要有分派、處理和關閉三種。服務臺人員可以隨機點擊一個序號,查看用戶的請求描述,并根據(jù)描述進行相應的處理。
4結論
本文通過對ITIL和SOA架構進行研究,設計了基于ITIL的SOA系統(tǒng)架構。在架構設計上引入ITIL規(guī)范,既延續(xù)了傳統(tǒng)的以技術為核心的思想,又兼顧以業(yè)務處理流程為導向的理念。分層設計、模塊化實現(xiàn)的設計思想,又使得系統(tǒng)架構具有“層內(nèi)高內(nèi)聚,層間松耦合”的特點。因此,該架構也具有較好的移植性和可擴展性。最后,基圖4服務臺功能實現(xiàn)圖于該架構開發(fā)了一套公共設施巡查系統(tǒng),實現(xiàn)了異常信息的早發(fā)現(xiàn)、早上報、早解決。通過對系統(tǒng)的測試表明,該架構的設計思想是合理可行的。
參考文獻
?。?] 楊鈺,吳健.ITIL中IT基礎架構管理模型設計與實現(xiàn)[J].計算機技術與發(fā)展,2007,17(4):250-253.
?。?] 冉崇善,趙萍.基于ITIL的企業(yè)IT資源服務系統(tǒng)設計[J].武漢理工大學學報,2006,28(5):80-83.
?。?] 胡彬彬.基于ITIL的IT服務管理中服務臺的設計與實現(xiàn)[D].北京:北京郵電大學,2006.
?。?] 劉翔,劉家紅.基于SOA架構的公安應用集成平臺的研究與實現(xiàn)[J].計算機工程與設計,2007,28(18):45194521.[5] 沈力,何婧,李映紅,等.基于SOA的無線電數(shù)據(jù)共享平臺的設計與實現(xiàn)[J].計算機科學,2014,41(6A):463-465.
?。?] 劉濤,侯秀萍.基于ESB的SOA架構的企業(yè)應用研究[J].計算機技術與發(fā)展,2010,20(5):230-233.
[7] 高巖,張少鑫,張斌,等.基于SOA架構Web服務組合系統(tǒng)[J].小型微型計算機系統(tǒng),2007,28(4):729-733.
?。?] 王玉娟.基于SOA的科技管理BPM平臺設計與實現(xiàn)[J].計算機科學,2013,40(11A):423-424.