本發(fā)明涉及公共信息化服務(wù)領(lǐng)域,具體來說,涉及一種時(shí)空信息組裝管理系統(tǒng)。
背景技術(shù):
國務(wù)院在2013年發(fā)布《國務(wù)院關(guān)于推進(jìn)物聯(lián)網(wǎng)有序健康發(fā)展的指導(dǎo)意見》(國發(fā)[2013]7號(hào))和《國務(wù)院關(guān)于促進(jìn)信息消費(fèi)擴(kuò)大內(nèi)需的若干意見》(國發(fā)[2013]32號(hào)),提出推動(dòng)智慧城市建設(shè),在有條件的城市開展智慧城市試點(diǎn)示范建設(shè),提升公共服務(wù)信息化水平。為進(jìn)一步推進(jìn)公共信息化服務(wù)在民生領(lǐng)域的落實(shí),國家發(fā)展改革委、中央編辦、工業(yè)和信息化等部門聯(lián)合發(fā)布《關(guān)于加快實(shí)施信息惠民工程有關(guān)工作的通知》(發(fā)改高技[2014]46號(hào)),提出要整合孤立、分散的公共服務(wù)資源,強(qiáng)化多部門聯(lián)合監(jiān)管和協(xié)同服務(wù),增強(qiáng)民生領(lǐng)域信息服務(wù)能力,推進(jìn)民生領(lǐng)域信息化深度應(yīng)用,提升公共服務(wù)均等普惠水平。智慧城市時(shí)空信息云平臺(tái)通過泛在網(wǎng)絡(luò)、傳感設(shè)備、智能計(jì)算等新型高科技手段,實(shí)時(shí)匯集城市各種時(shí)空信息,實(shí)現(xiàn)智慧城市四個(gè)層次的集成整合,實(shí)現(xiàn)可透視、感知、廣泛互聯(lián)互通、輔助智能決策、靈性、安全可靠的地理信息綜合服務(wù),這也是是現(xiàn)代測(cè)繪地理信息服務(wù)城市建設(shè)與發(fā)展的重要方式。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問題在于提供一種為各類空間信息服務(wù)提供統(tǒng)一高效管理、智能組裝、執(zhí)行監(jiān)控的時(shí)空信息組裝管理系統(tǒng)。
本發(fā)明的技術(shù)方案可以通過以下技術(shù)措施來實(shí)現(xiàn):
一種時(shí)空信息組裝管理系統(tǒng),包括服務(wù)注冊(cè)中心、流程編排工具、流程管理工具、流程執(zhí)行引擎、流程監(jiān)控工具,其中,
服務(wù)注冊(cè)中心,用于定義服務(wù)元數(shù)據(jù)規(guī)范,實(shí)現(xiàn)服務(wù)元數(shù)據(jù)的快速存儲(chǔ)、高效索引和緩存,提供服務(wù)的可視化注冊(cè),并支持服務(wù)的人工查詢和自動(dòng)發(fā)現(xiàn);
流程編排工具,用于提供服務(wù)鏈構(gòu)建工具,提供包括串行、并行、同步、異步的執(zhí)行方式的流程編排,從而組合已有的服務(wù),形成一個(gè)復(fù)合的服務(wù);
流程管理工具,用于提供對(duì)編排好的流程進(jìn)行部署、卸載、刪除,展示流程的信息,并實(shí)現(xiàn)流程服務(wù)的自動(dòng)發(fā)布功能;
流程執(zhí)行引擎,用于響應(yīng)外部的請(qǐng)求,對(duì)流程進(jìn)行調(diào)度執(zhí)行,在執(zhí)行中可以按照流程圖順序或并發(fā)調(diào)用對(duì)應(yīng)的服務(wù),并匹配轉(zhuǎn)換調(diào)用數(shù)據(jù);
流程監(jiān)控工具,用于對(duì)流程執(zhí)行實(shí)例進(jìn)行監(jiān)控,跟蹤流程的執(zhí)行進(jìn)度,記錄流程中產(chǎn)生的數(shù)據(jù),并記錄流程調(diào)用中產(chǎn)生的錯(cuò)誤,并支持錯(cuò)誤的修復(fù)。
服務(wù)元數(shù)據(jù)規(guī)范的定義包括:
服務(wù)的接口元數(shù)據(jù)規(guī)范,基于OGC的標(biāo)準(zhǔn),對(duì)服務(wù)接口描述制定對(duì)應(yīng)的元數(shù)據(jù)描述規(guī)范,并針對(duì)非OGC標(biāo)準(zhǔn)的服務(wù),提供通用的服務(wù)元數(shù)據(jù)描述規(guī)范;
服務(wù)的管理監(jiān)控元數(shù)據(jù)規(guī)范,針對(duì)服務(wù)的管理的需求,提供包括服務(wù)的功能描述、作者、適用場(chǎng)景的元信息,針對(duì)服務(wù)監(jiān)控需求,提供服務(wù)的部署位置、屬性配置、超時(shí)設(shè)置等元信息;
服務(wù)的QoS元數(shù)據(jù)規(guī)范,針對(duì)服務(wù)QoS管理的需求,提供包括服務(wù)的響應(yīng)時(shí)間、資源占用率、可用性、可靠性的相關(guān)指標(biāo)的元信息描述規(guī)范。
流程編排工具通過包括拖放、連線、設(shè)置屬性的操作,實(shí)現(xiàn)流程的可視化編輯。
流程管理工具中的流程展示包括流程查詢和流程展示,流程查詢根據(jù)包括流程名稱、創(chuàng)建人、類別、狀態(tài)的查詢,查詢結(jié)果以流程列表的方式進(jìn)行返回;流程展示包括圖形化展示和流程的輸入輸出數(shù)據(jù)展示。
流程執(zhí)行引擎響應(yīng)外部請(qǐng)求的方式包括根據(jù)流程的輸入輸出接口,動(dòng)態(tài)生成調(diào)用界面,界面中根據(jù)接口的數(shù)據(jù)類型,生成文本框、選擇框、日期選擇框以及數(shù)據(jù)選擇欄,支持流程初始數(shù)據(jù)的填寫,響應(yīng)根據(jù)服務(wù)的輸入?yún)?shù),啟動(dòng)流程,并設(shè)置流程的初始數(shù)據(jù)。
流程監(jiān)控工具提供流程狀態(tài)監(jiān)控和流程錯(cuò)誤警報(bào)與處理;流程狀態(tài)監(jiān)控包括對(duì)流程的執(zhí)行進(jìn)度監(jiān)控和流程中產(chǎn)生的各種數(shù)據(jù)的監(jiān)控;流程的錯(cuò)誤警報(bào)用于監(jiān)控流程中包括服務(wù)失效、服務(wù)響應(yīng)錯(cuò)誤、服務(wù)返回消息為空、服務(wù)拋出異常的常見錯(cuò)誤信息,并將這些信息以警報(bào)形式展示處理,在流程出錯(cuò)后,修改流程數(shù)據(jù),進(jìn)行重試或回退到之前已經(jīng)執(zhí)行過的服務(wù)處,重新執(zhí)行。
附圖說明
利用附圖對(duì)本發(fā)明作進(jìn)一步說明,但附圖中的實(shí)施例不構(gòu)成對(duì)本發(fā)明的任何限制。
圖1是本發(fā)明一種時(shí)空信息組裝管理系統(tǒng)的系統(tǒng)劃分結(jié)構(gòu)示意圖;
圖2是本發(fā)明一種時(shí)空信息組裝管理系統(tǒng)的業(yè)務(wù)流程示意圖;
圖3是本發(fā)明一種時(shí)空信息組裝管理系統(tǒng)流程執(zhí)行引擎部分外部接口的結(jié)構(gòu)示意圖;
圖4是本發(fā)明一種時(shí)空信息組裝管理系統(tǒng)的外部接口的結(jié)構(gòu)示意圖;
圖5是本發(fā)明一種時(shí)空信息組裝管理系統(tǒng)的系統(tǒng)架構(gòu)。
具體實(shí)施方式
為使本發(fā)明更加容易理解,下面將進(jìn)一步闡述本發(fā)明的具體實(shí)施例。
如圖1-2所示,一種時(shí)空信息組裝管理系統(tǒng),包括服務(wù)注冊(cè)中心、流程編排工具、流程管理工具、流程執(zhí)行引擎、流程監(jiān)控工具。
服務(wù)注冊(cè)中心定義服務(wù)元數(shù)據(jù)規(guī)范,實(shí)現(xiàn)服務(wù)元數(shù)據(jù)的快速存儲(chǔ)、高效索引和緩存,提供服務(wù)的可視化注冊(cè),并支持服務(wù)的人工查詢和自動(dòng)發(fā)現(xiàn)。
制定服務(wù)元數(shù)據(jù)規(guī)范,包括定義:WPS、WMS、WCS、WFS服務(wù)的接口元數(shù)據(jù)描述方法,服務(wù)的接口元數(shù)據(jù)描述方法,服務(wù)QoS信息的描述方法,以及支持服務(wù)管理、監(jiān)控、流程化調(diào)用所需的元信息描述方法。其中,
Web Processing Server(WPS),web地理處理服務(wù),是空間信息服務(wù)的一種,是一種符合OGC規(guī)范的Web Service,要實(shí)現(xiàn)Web Service,就需要考慮三個(gè)元素SOAP、WSDL、UDDI,涉及的問題是服務(wù)的發(fā)布、查找、綁定和訪問,然后將業(yè)務(wù)邏輯集成到Web Service的框架中,所不同的是OGC WPS已經(jīng)規(guī)定好了統(tǒng)一的服務(wù)的基礎(chǔ)操作,服務(wù)的訪問參數(shù),Capabilities的文檔內(nèi)容和格式以及請(qǐng)求與響應(yīng)的編碼模式;Web map service(WMS),Web地圖服務(wù),遵循OGC的WMS1.1.1、1.3.0規(guī)范,利用具有地理空間位置信息的數(shù)據(jù)制作地圖,其中將地圖定義為地理數(shù)據(jù)可視的表現(xiàn),這個(gè)規(guī)范定義了三個(gè)操作:GetCapabitities返回服務(wù)級(jí)元數(shù)據(jù),它是對(duì)服務(wù)信息內(nèi)容和要求參數(shù)的一種描述;GetMap返回一個(gè)地圖影像,其地理空間參考和大小參數(shù)是明確定義了的;GetFeatureInfo(可選)返回顯示在地圖上的某些特殊要素的信息;WCS,遵循OGC的WCS1.0.0、1.1.0、1.1.2規(guī)范,該服務(wù)面向空間影像數(shù)據(jù),這些操作允許用戶訪問“Coverage”數(shù)據(jù),如衛(wèi)星影像、數(shù)字高程數(shù)據(jù)等;Web Feature Service(WFS),Web要素服務(wù),遵循OGC的WFS1.0.0、1.1.0規(guī)范,網(wǎng)絡(luò)要素服務(wù)允許用戶終端從多個(gè)Web要素服務(wù)中取得使用地理標(biāo)記語言(GML)編碼的地理空間數(shù)據(jù),支持對(duì)地理要素的插入,更新,刪除,檢索和發(fā)現(xiàn)服務(wù)。該服務(wù)根據(jù)HTTP客戶請(qǐng)求返回GML(Geography Markup Language、地理標(biāo)識(shí)語言)數(shù)據(jù)。WFS對(duì)應(yīng)于常見桌面程序中的條件查詢功能,WFS通過OGC Filter構(gòu)造查詢條件,支持基于空間幾何關(guān)系的查詢,基于屬性域的查詢,當(dāng)然還包括基于空間關(guān)系和屬性域的共同查詢。
服務(wù)的接口元數(shù)據(jù)規(guī)范基于OGC的標(biāo)準(zhǔn),對(duì)WPS、WMS、WCS、WFS等OGC等類型對(duì)服務(wù)接口描述制定對(duì)應(yīng)的元數(shù)據(jù)描述規(guī)范。并針對(duì)非OGC標(biāo)準(zhǔn)的服務(wù),提供通用的服務(wù)元數(shù)據(jù)描述規(guī)范;服務(wù)的管理監(jiān)控元數(shù)據(jù)規(guī)范針對(duì)服務(wù)的管理的需求,提供服務(wù)的功能描述、作者、適用場(chǎng)景等元信息。針對(duì)服務(wù)監(jiān)控需求,提供服務(wù)的部署位置、屬性配置、超時(shí)設(shè)置等元信息;服務(wù)的QoS元數(shù)據(jù)規(guī)范針對(duì)服務(wù)QoS管理的需求,提供服務(wù)的響應(yīng)時(shí)間、資源占用率、可用性、可靠性等相關(guān)指標(biāo)的元信息描述規(guī)范。
服務(wù)元數(shù)據(jù)存儲(chǔ)、索引與緩存提供元數(shù)據(jù)的存儲(chǔ)機(jī)制,并對(duì)元數(shù)據(jù)建立索引,同時(shí)實(shí)現(xiàn)緩存機(jī)制,支持元數(shù)據(jù)的快速檢索。
元數(shù)據(jù)存儲(chǔ)機(jī)制針對(duì)服務(wù)元數(shù)據(jù)可擴(kuò)展特點(diǎn),設(shè)計(jì)具有良好擴(kuò)展性的元數(shù)據(jù)存儲(chǔ)機(jī)制,從而實(shí)現(xiàn)不同類型的元數(shù)據(jù)規(guī)范都能夠高效存儲(chǔ);元數(shù)據(jù)索引機(jī)制針對(duì)服務(wù)元數(shù)據(jù)中包含的結(jié)構(gòu)化和非結(jié)構(gòu)化信息,建立元數(shù)據(jù)索引機(jī)制,可以支持對(duì)結(jié)構(gòu)化和非結(jié)構(gòu)化屬性的快速檢索;元數(shù)據(jù)緩存機(jī)制針對(duì)自動(dòng)發(fā)現(xiàn)并調(diào)用服務(wù)時(shí),對(duì)實(shí)時(shí)性的要求,實(shí)現(xiàn)服務(wù)元數(shù)據(jù)的緩存機(jī)制,基于緩存策略,實(shí)現(xiàn)快速的服務(wù)發(fā)現(xiàn)。
服務(wù)注冊(cè)提供元數(shù)據(jù)的在線注冊(cè)功能。用戶可以填寫服務(wù)的元信息,配置服務(wù)的接口、以及調(diào)用所需的依賴文件,以及管理所需的元信息,從而將服務(wù)在注冊(cè)中心進(jìn)行統(tǒng)一管理。
處理類服務(wù)的注冊(cè)實(shí)現(xiàn)WPS標(biāo)準(zhǔn)化服務(wù)的注冊(cè),可以基于標(biāo)準(zhǔn)填寫編輯修改服務(wù)的接口。對(duì)于不符合規(guī)范的數(shù)據(jù)處理服務(wù),提供其個(gè)性化服務(wù)接口的編輯修改功能;數(shù)據(jù)類服務(wù)的注冊(cè)實(shí)現(xiàn)WMS、WFS、WCS等服務(wù)的注冊(cè),可以依據(jù)規(guī)范填寫該數(shù)據(jù)的相關(guān)描述信息;通用服務(wù)的注冊(cè)對(duì)于非數(shù)據(jù)處理的服務(wù),可以提供通用的界面,實(shí)現(xiàn)對(duì)服務(wù)的接口進(jìn)行編輯修改;管理監(jiān)控以及Qos元信息管理可以對(duì)服務(wù)管理監(jiān)控所需的各類元信息進(jìn)行編輯,并提供接口,支持Qos信息的自動(dòng)更新。
服務(wù)查詢與發(fā)現(xiàn)提供服務(wù)的人工查詢功能,使用戶能夠查詢符合條件的服務(wù)。提供服務(wù)的自動(dòng)發(fā)現(xiàn)功能,可以提供API,實(shí)現(xiàn)服務(wù)的自動(dòng)發(fā)現(xiàn)和動(dòng)態(tài)綁定。
人工查詢功能可以依據(jù)名稱、功能、接口參數(shù)、類型等條件查找注冊(cè)中心對(duì)應(yīng)的服務(wù)??梢灾С帜:樵?,以及對(duì)非結(jié)構(gòu)化描述信息的查詢;自動(dòng)發(fā)現(xiàn)功能可以提供API,根據(jù)服務(wù)的信息,精確發(fā)現(xiàn)服務(wù),并返回服務(wù)接口的詳細(xì)描述信息,以及服務(wù)調(diào)用所需的技術(shù)信息,支持服務(wù)的動(dòng)態(tài)綁定與調(diào)用。
流程編排工具提供服務(wù)鏈構(gòu)建工具,提供串行、并行、異步等不同執(zhí)行方式的流程編排,從而組合已有的服務(wù),形成一個(gè)復(fù)合的服務(wù)。其中:
服務(wù)查詢與綁定在流程編排工具中,可以根據(jù)當(dāng)前流程的需求,查詢滿足要求的服務(wù),作為編排的原子服務(wù);基于流程類型的查詢可以基于流程所屬的業(yè)務(wù)類型,查詢滿足該類型流程編排所需的服務(wù),并展示在候選服務(wù)面板上,供編排使用;基于關(guān)鍵詞的服務(wù)過濾可以對(duì)服務(wù)按照關(guān)鍵詞進(jìn)行過濾,實(shí)現(xiàn)服務(wù)面板上服務(wù)的二次過濾,從而快速定位到具體的服務(wù);
流程可視化編輯在流程編排工具中,可以通過拖放、連線、設(shè)置屬性等操作,實(shí)現(xiàn)流程的可視化編輯;流程圖設(shè)計(jì)可以實(shí)現(xiàn)拖放、連線、選擇、縮放、對(duì)齊、命名等編輯操作,實(shí)現(xiàn)流程圖的可視化設(shè)計(jì);流程的順序、分支、并發(fā)控制實(shí)現(xiàn)服務(wù)在流程中進(jìn)行順序組合、并發(fā)組合以及支持按照條件進(jìn)行分支,實(shí)現(xiàn)流程的各種控制操作;同步服務(wù)和異步服務(wù)的編排支持同步服務(wù)和異步服務(wù)的編排,可以為異步服務(wù)設(shè)置回調(diào)任務(wù),等待回調(diào)消息,從而實(shí)現(xiàn)長時(shí)間執(zhí)行的服務(wù)調(diào)用。
流程的數(shù)據(jù)流設(shè)計(jì)包括數(shù)據(jù)依賴關(guān)系設(shè)置和流程輸入輸出設(shè)置,數(shù)據(jù)依賴關(guān)系設(shè)置支持對(duì)流程的數(shù)據(jù)流進(jìn)行設(shè)置,可以支持前面服務(wù)產(chǎn)生的數(shù)據(jù)和后續(xù)服務(wù)之間的綁定,能夠?qū)崿F(xiàn)基本的數(shù)據(jù)適配,對(duì)數(shù)據(jù)進(jìn)行合并分解和適配,使數(shù)據(jù)能夠正確地在流程中傳遞;流程輸入輸出設(shè)置可以支持對(duì)流程設(shè)置輸入、輸出數(shù)據(jù),并支持流程的輸入輸出數(shù)據(jù)與流程中服務(wù)的數(shù)據(jù)之間綁定。
流程管理工具提供對(duì)編排好的流程進(jìn)行部署、卸載、刪除,可以展示流程的信息,并實(shí)現(xiàn)流程服務(wù)的自動(dòng)發(fā)布功能。
流程的查詢展示包括:流程查詢,可以根據(jù)流程名稱、創(chuàng)建人、類別、狀態(tài)等查詢流程,可以將查詢結(jié)果以流程列表的方式進(jìn)行返回;流程展示,可以圖形化展示流程,以及展示流程的輸入輸出數(shù)據(jù)??梢哉故靖鱾€(gè)服務(wù)產(chǎn)生和輸入的數(shù)據(jù)。
流程的部署卸載與服務(wù)發(fā)布包括:流程部署、卸載功能,用于實(shí)現(xiàn)對(duì)編排好的流程進(jìn)行部署到流程執(zhí)行引擎中,部署后的流程可以被調(diào)用來執(zhí)行;實(shí)現(xiàn)流程的卸載功能,將部署的流程卸載,卸載后的流程將不能再被調(diào)度執(zhí)行;流程服務(wù)的自動(dòng)發(fā)布,在流程部署時(shí),自動(dòng)根據(jù)流程的接口,在服務(wù)注冊(cè)中心注冊(cè)一個(gè)流程服務(wù),該服務(wù)可以和普通服務(wù)一樣被調(diào)用。流程卸載后,該服務(wù)將自動(dòng)刪除;流程的版本化管理,在一個(gè)已經(jīng)部署的流程修改后,可以重新部署,之前已啟動(dòng)的流程將按照老版本執(zhí)行,直到流程執(zhí)行結(jié)束。
流程執(zhí)行引擎響應(yīng)外部的請(qǐng)求,對(duì)流程進(jìn)行調(diào)度執(zhí)行,在執(zhí)行中可以按照流程圖順序或并發(fā)調(diào)用對(duì)應(yīng)的服務(wù),并匹配轉(zhuǎn)換調(diào)用數(shù)據(jù)。其中:
流程啟動(dòng)包括輸入頁面動(dòng)態(tài)生成,根據(jù)流程的輸入輸出接口,動(dòng)態(tài)生成調(diào)用頁面。界面中可以并根據(jù)接口的數(shù)據(jù)類型,生成文本框、選擇框、日期選擇框以及數(shù)據(jù)選擇欄,來支持流程初始數(shù)據(jù)的填寫;流程服務(wù)響應(yīng),實(shí)現(xiàn)流程服務(wù)的響應(yīng)機(jī)制,可以響應(yīng)根據(jù)服務(wù)的輸入?yún)?shù),啟動(dòng)流程,并設(shè)置流程的初始數(shù)據(jù);
流程調(diào)度包括流程順序、分支、并行調(diào)度,實(shí)現(xiàn)對(duì)順序、分支、并行等各種控制邏輯的動(dòng)態(tài)調(diào)度,按照流程的執(zhí)行時(shí)序,對(duì)服務(wù)進(jìn)行按次序執(zhí)行;同步服務(wù)與異步服務(wù)的調(diào)用,實(shí)現(xiàn)對(duì)同步服務(wù)和異步服務(wù)調(diào)用;對(duì)于同步服務(wù)可以調(diào)用并等待返回直到服務(wù)超時(shí),對(duì)于異步服務(wù),則在調(diào)用后直接執(zhí)行后續(xù)服務(wù)直到回調(diào)任務(wù)處進(jìn)行等待;數(shù)據(jù)轉(zhuǎn)換適配,對(duì)流程中服務(wù)調(diào)用的輸入輸出數(shù)據(jù)進(jìn)行適配轉(zhuǎn)換,通過服務(wù)注冊(cè)中心中的服務(wù)接口信息,自動(dòng)格式化輸入輸出消息,保障服務(wù)的正確調(diào)用。
流程監(jiān)控工具對(duì)流程執(zhí)行實(shí)例進(jìn)行監(jiān)控,跟蹤流程的執(zhí)行進(jìn)度,記錄流程中產(chǎn)生的數(shù)據(jù),并記錄流程調(diào)用中產(chǎn)生的錯(cuò)誤,并支持錯(cuò)誤的修復(fù)。其中:
流程狀態(tài)監(jiān)控包括流程進(jìn)度監(jiān)控,可以監(jiān)控流程的執(zhí)行進(jìn)度,包括并發(fā)流程中各個(gè)分支的執(zhí)行進(jìn)度,該進(jìn)度可以在頁面上實(shí)時(shí)展示;流程數(shù)據(jù)監(jiān)控,可以監(jiān)控流程中產(chǎn)生的各種數(shù)據(jù),包括每一個(gè)服務(wù)調(diào)用的輸入輸出數(shù)據(jù),根據(jù)這些數(shù)據(jù),來判斷流程執(zhí)行是否正確;
流程錯(cuò)誤警報(bào)與處理包括流程錯(cuò)誤警報(bào),可以監(jiān)控流程中服務(wù)失效、服務(wù)響應(yīng)錯(cuò)誤、服務(wù)返回消息為空、服務(wù)拋出異常等常見的錯(cuò)誤信息,并將這些信息以警報(bào)形式展示處理;流程錯(cuò)誤修復(fù),在流程出錯(cuò)后,可以修改流程數(shù)據(jù),進(jìn)行重試,也可以回退到之前已經(jīng)執(zhí)行過的服務(wù)處,重新執(zhí)行。
服務(wù)組裝管理系統(tǒng)中的流程執(zhí)行引擎部分,需要進(jìn)行外部接口調(diào)用,外部接口包含:1)元數(shù)據(jù)查詢,調(diào)用時(shí)空數(shù)據(jù)引擎進(jìn)行元數(shù)據(jù)查詢,并完成數(shù)據(jù)綁定;2)服務(wù)調(diào)用,調(diào)用基礎(chǔ)時(shí)空數(shù)據(jù)服務(wù)中對(duì)應(yīng)的服務(wù);3)服務(wù)發(fā)布,服務(wù)組裝管理軟件提供服務(wù)信息列表,用于服務(wù)發(fā)布,如圖3所示。
服務(wù)組裝管理系統(tǒng)中的內(nèi)部接口主要包含:1)服務(wù)查詢,流程編排工具調(diào)用服務(wù)注冊(cè)中心,查詢對(duì)應(yīng)的服務(wù);2)流程設(shè)計(jì),流程管理工具調(diào)用流程編排工具,進(jìn)行流程編排設(shè)計(jì);3)啟動(dòng)流程,流程管理工具調(diào)用流程執(zhí)行引擎,啟動(dòng)流程執(zhí)行;4)監(jiān)控流程,流程監(jiān)控工具調(diào)用流程監(jiān)控接口,監(jiān)控流程執(zhí)行過程,如圖4所示。
本發(fā)明服務(wù)組裝管理系統(tǒng)為各類空間信息服務(wù)提供統(tǒng)一高效管理、智能組裝、執(zhí)行監(jiān)控。該系統(tǒng)使用服務(wù)注冊(cè)中心支持云服務(wù)資源的注冊(cè)與發(fā)現(xiàn),使用流程編排工具對(duì)服務(wù)鏈工作流程進(jìn)行編排;使用流程管理工具支持流程的的部署、卸載、刪除,以及實(shí)現(xiàn)流程服務(wù)的自動(dòng)發(fā)布功能和執(zhí)行;使用流程執(zhí)行引擎來響應(yīng)外部請(qǐng)求,對(duì)流程進(jìn)行調(diào)度執(zhí)行,在執(zhí)行中可以按照流程圖適配和調(diào)用對(duì)應(yīng)的服務(wù);通過流程監(jiān)控工具對(duì)流程執(zhí)行實(shí)例進(jìn)行監(jiān)控,跟蹤流程的執(zhí)行進(jìn)度,記錄流程中產(chǎn)生的數(shù)據(jù),并記錄流程調(diào)用中產(chǎn)生的錯(cuò)誤,并支持錯(cuò)誤的修復(fù)。
針對(duì)多樣化的服務(wù)描述需求,數(shù)據(jù)模式具有高度的可變性,利用MongoDB實(shí)現(xiàn)服務(wù)元數(shù)據(jù)的存儲(chǔ)和高效查詢。多種不同模式的服務(wù)元數(shù)據(jù)的便捷存儲(chǔ),同時(shí)由于MongoDB中數(shù)據(jù)常駐內(nèi)存,可以實(shí)現(xiàn)高效的數(shù)據(jù)查詢。
由于服務(wù)的組合需要提供更加簡(jiǎn)便易用的編排和執(zhí)行工具,我們采用開源的工作流平臺(tái)Activiti來實(shí)現(xiàn)對(duì)流程編排執(zhí)行的支持,通過擴(kuò)展Activiti的流程編排工具,實(shí)現(xiàn)服務(wù)鏈的快速設(shè)計(jì),并擴(kuò)展底層調(diào)用機(jī)制,實(shí)現(xiàn)流程的調(diào)度和執(zhí)行。
為了能夠使系統(tǒng)具有更好的可管理性,我們還整合和開源的消息中間件ActiveMQ,用來實(shí)現(xiàn)工具中各類事件的發(fā)布訂閱和推送,這樣當(dāng)服務(wù)執(zhí)行出錯(cuò)的時(shí)候,能夠及時(shí)通知相關(guān)人員知曉。
服務(wù)組裝管理系統(tǒng)的系統(tǒng)架構(gòu)包含支撐平臺(tái)層,核心組件層,接口層以及規(guī)范定義,如圖5所示。支撐平臺(tái)層,指構(gòu)建服務(wù)組裝管理軟件套件所需的各類底層平臺(tái)軟件,包含Activiti工作流,ActivieMQ消息中間件,Tomcat應(yīng)用服務(wù)器,以及數(shù)據(jù)存儲(chǔ)相關(guān)的MongoDB和MySQL數(shù)據(jù)庫;核心組件層,指基于支撐平臺(tái)開發(fā)的各類核心組件,包含流程執(zhí)行監(jiān)控、流程編排工具,流程執(zhí)行,流程管理,服務(wù)注冊(cè)中心等;接口層,指對(duì)外服務(wù)的門戶,以及供其他應(yīng)用調(diào)用的管理服務(wù)API;規(guī)范定制,指定義WPS、WMS、WCS、WFS等服務(wù)的接口元數(shù)據(jù)描述方法,服務(wù)QoS信息的描述方法,以及支持服務(wù)管理、監(jiān)控、流程化調(diào)用所需的元信息描述方法。
綜上所述,本發(fā)明服務(wù)組裝管理系統(tǒng)實(shí)現(xiàn)多樣化服務(wù)元數(shù)據(jù)的高效索引和快速檢索;實(shí)現(xiàn)流程的可視化編排,支持分支、并發(fā)、異步調(diào)用等功能;實(shí)現(xiàn)流程的便捷調(diào)用,支持動(dòng)態(tài)地產(chǎn)生流程輸入?yún)?shù)頁面,來啟動(dòng)流程;實(shí)現(xiàn)流程中服務(wù)的動(dòng)態(tài)調(diào)度,在流程執(zhí)行中,能夠?qū)崿F(xiàn)動(dòng)態(tài)適配參數(shù),創(chuàng)建服務(wù)消息,實(shí)現(xiàn)服務(wù)的調(diào)用;實(shí)現(xiàn)流程的監(jiān)控,能夠檢查跟蹤流程狀態(tài),捕獲異常情況,并提供錯(cuò)誤處理機(jī)制。
最后所應(yīng)當(dāng)說明的是,以上實(shí)施例僅用以說明本發(fā)明的技術(shù)方案而非對(duì)本發(fā)明保護(hù)范圍的限制,盡管參照較佳實(shí)施例對(duì)本發(fā)明作了詳細(xì)說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,可以對(duì)本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換,而不脫離本發(fā)明技術(shù)方案的實(shí)質(zhì)和范圍。