欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于融合開放網(wǎng)絡(luò)的混合服務(wù)支撐系統(tǒng)及方法

文檔序號:7747640閱讀:203來源:國知局
專利名稱:一種基于融合開放網(wǎng)絡(luò)的混合服務(wù)支撐系統(tǒng)及方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種基于融合開放網(wǎng)絡(luò)的混合服務(wù)支撐系統(tǒng)及其工作方法,確切地 說,涉及一種包括基于模板復(fù)用的服務(wù)生成子系統(tǒng)、面向混合服務(wù)的多任務(wù)并發(fā)執(zhí)行子系 統(tǒng)、服務(wù)資源接入子系統(tǒng)以及服務(wù)管理子系統(tǒng)的混合服務(wù)支撐系統(tǒng)及及其工作方法;屬于 面向服務(wù)的電信網(wǎng)和互聯(lián)網(wǎng)的應(yīng)用技術(shù)領(lǐng)域。
背景技術(shù)
隨著通信和網(wǎng)絡(luò)技術(shù)的快速發(fā)展,傳統(tǒng)電信網(wǎng)中各類異構(gòu)網(wǎng)絡(luò)的融合,甚至與互 聯(lián)網(wǎng)域以外的網(wǎng)絡(luò)的融合已經(jīng)成為網(wǎng)絡(luò)發(fā)展的主流趨勢。人們對于服務(wù)的需求也逐步呈現(xiàn) 出多樣化和綜合化的趨勢。業(yè)界一般將不同網(wǎng)絡(luò)的服務(wù)統(tǒng)稱為混合服務(wù)。在這個背景下, 在異構(gòu)開放的網(wǎng)絡(luò)和終端上,如何提供一種跨電信網(wǎng)與互聯(lián)網(wǎng),支持靈活、可擴(kuò)展的服務(wù)生 成及執(zhí)行的混合服務(wù)的支撐系統(tǒng)及其工作方法,已經(jīng)成為國內(nèi)外網(wǎng)絡(luò)界科技人員共同關(guān)注 和研究的熱點課題。近年來,隨著軟件新技術(shù)的發(fā)展,服務(wù)已成為開放網(wǎng)絡(luò)環(huán)境下資源封裝與抽象的 核心概念,通過動態(tài)地組合服務(wù),實現(xiàn)資源的靈活聚合成為技術(shù)發(fā)展的自然思路。面向服務(wù) 體系架構(gòu)SOA (Service-Oriented Architecture)能夠?qū)?yīng)用程序的不同功能單元通過服 務(wù)之間定義的良好接口和契約聯(lián)系起來,使用戶可以不受限制地重復(fù)使用軟件,并把各種 資源互連起來。支撐S0A的關(guān)鍵是其消息傳遞架構(gòu)——企業(yè)服務(wù)總線ESB。ESB是傳統(tǒng)中 間件技術(shù)與XML、Web服務(wù)等技術(shù)相互結(jié)合的產(chǎn)物,是一種在松散耦合的服務(wù)和應(yīng)用之間的 標(biāo)準(zhǔn)集成方式。ESB提供了一種開放的、基于標(biāo)準(zhǔn)的消息機制,通過簡單的標(biāo)準(zhǔn)適配器和接 口,用于完成粗粒度應(yīng)用(服務(wù))和其他組件之間的互操作,能夠滿足大型異構(gòu)企業(yè)環(huán)境的 集成需求。Java業(yè)務(wù)集成JBI (Java Business Integration)規(guī)范定義了一個ESB,以供開 發(fā)商能方便地利用Java語言實現(xiàn)面向服務(wù)的架構(gòu)。Web服務(wù)是使應(yīng)用程序能夠采用與平臺和編程語言都無關(guān)的方式實現(xiàn)相互通信的 一項技術(shù)。W3C對Web服務(wù)的定義如下Web服務(wù)是由URI標(biāo)識的軟件系統(tǒng),其接口和綁定 可以通過XML進(jìn)行定義、描述和發(fā)現(xiàn),Web服務(wù)支持通過基于Internet的協(xié)議使用基于XML 的消息與其它Web服務(wù)或軟件系統(tǒng)直接交互。Web服務(wù)是一個軟件接口,它描述了一組操 作,可以在網(wǎng)絡(luò)上通過標(biāo)準(zhǔn)化的XML消息傳遞來訪問這組操作。它使用基于XML語言的協(xié) 議來描述要執(zhí)行的操作或與另一個Web服務(wù)交換的數(shù)據(jù)?,F(xiàn)在,Web服務(wù)技術(shù)已經(jīng)被廣泛 接受,使得Web服務(wù)正在逐步成為Internet網(wǎng)絡(luò)環(huán)境中資源封裝的標(biāo)準(zhǔn)形式。隨著部署在 Internet上的Web服務(wù)的不斷豐富,這些可被公共訪問和集成的Web服務(wù)已經(jīng)構(gòu)成了一個 潛在、巨大的標(biāo)準(zhǔn)組件庫。電信網(wǎng)絡(luò)的開放性研究一直是業(yè)內(nèi)的熱點,特別是在電信市場競爭日益激烈的今 天,電信運營商們面臨著巨大挑戰(zhàn),他們迫切需要開發(fā)出標(biāo)新立異、形形色色的增值業(yè)務(wù)來 吸引更多用戶,以滿足用戶對電信業(yè)務(wù)的日益增長需求。電信界Web服務(wù)的提出備受各界 關(guān)注,通過API把電信底層的網(wǎng)絡(luò)資源開放出來,并以Web服務(wù)方式向第三方和業(yè)務(wù)提供商開放,從而可以利用IP網(wǎng)絡(luò)中的成熟技術(shù)來幫助解決電信網(wǎng)絡(luò)中諸如運營商之間跨網(wǎng)絡(luò)訪問等問題,而Internet應(yīng)用程序開發(fā)商也可以方便地利用電信網(wǎng)絡(luò)的資源,提供靈活多 樣的服務(wù)?;赪eb服務(wù)的服務(wù)組合的方法可以降低系統(tǒng)開發(fā)的難度和復(fù)雜度,提高系統(tǒng)對 復(fù)雜多變的業(yè)務(wù)需求的適應(yīng)能力。技術(shù)人員可以通過對已有Web服務(wù)的組合,設(shè)計并實現(xiàn) 一套完整的解決方案來適應(yīng)復(fù)雜多變的業(yè)務(wù)需求。在Web服務(wù)的服務(wù)組合中,通常是通過 某種腳本語言來描述最終的組合流程,并在支持該腳本語言的引擎上部署和運行,這種腳 本語言被稱為服務(wù)編排語言。目前,比較成熟的服務(wù)編排語言主要有業(yè)務(wù)流程執(zhí)行語言 BPEL (Business ProcessExecution Language)。它是一種使用 XML 編寫的、用于自動化業(yè) 務(wù)流程的編程語言,又被稱作WS-BPEL或BPEL4WS。BPEL廣泛用于與Web服務(wù)相關(guān)的項目 開發(fā)中,其優(yōu)點為有可移植性和能有效保護(hù)資產(chǎn)。Web服務(wù)實現(xiàn)了接口的可重用性,而業(yè)務(wù) 流程執(zhí)行語言BPEL實現(xiàn)了 Web服務(wù)的重用性,或者稱之為服務(wù)流程的可重用性,通過定義 BPEL流程,企業(yè)可以使用現(xiàn)有的細(xì)粒度的Web服務(wù),重新創(chuàng)建符合自己需求的其他粗粒度 的服務(wù)。目前,對于BPEL腳本的開發(fā),IBM、0racle和微軟等公司都提供了廣泛的支持。這 些公司都提供了自己開發(fā)的BPEL執(zhí)行引擎和與之配套的BPEL腳本的圖形化開發(fā)環(huán)境。但 是,在眾多的執(zhí)行引擎和圖形化開發(fā)環(huán)境中,對于BPEL腳本的復(fù)用機制始終缺乏一套靈活 完善的解決方案,絕大多數(shù)的系統(tǒng)只提供部分支持,且使用起來難度很大?,F(xiàn)在,利用BPEL來實現(xiàn)Web服務(wù)間的組合和系統(tǒng)開發(fā),大都是基于特定的行業(yè)領(lǐng) 域內(nèi)進(jìn)行的。而每個行業(yè)領(lǐng)域內(nèi)部,通常都有很多業(yè)務(wù)的邏輯和功能是可以被重復(fù)使用的。 但是,這種重復(fù)使用的層次和粒度也可能多種多樣,因此要想有效復(fù)用這些邏輯功能,必然 要提供一套靈活性高的復(fù)用機制。同時,同一行業(yè)領(lǐng)域內(nèi)部的不同的解決方案之間,對于同 樣的業(yè)務(wù)也都會有著自己特有的邏輯設(shè)計。這就意味著系統(tǒng)也要給用戶足夠的自主性,讓 其對復(fù)用的邏輯能夠執(zhí)行自主控制。而且,因系統(tǒng)的復(fù)雜性和現(xiàn)實需求的變更等原因,都不 可避免地要對現(xiàn)有的BPEL腳本進(jìn)行新的開發(fā)或修改。尤其是在創(chuàng)建新的相關(guān)流程時,往往 會重復(fù)用到以前開發(fā)過的BPEL代碼段。但是,如果都進(jìn)行BPEL流程的封裝,又勢必會造成 在流程結(jié)構(gòu)和層次上的復(fù)雜性而帶來不便。與此同時,動態(tài)流程執(zhí)行引擎主要執(zhí)行依據(jù)WS-BPEL標(biāo)準(zhǔn)編寫的業(yè)務(wù)流程,調(diào)用 Web服務(wù),發(fā)送和接受消息,處理數(shù)據(jù)操作以及排除故障。然而在實際應(yīng)用中,電信Web服務(wù) 有較高的實時性需求,如要求服務(wù)要有高吞吐量和低時延,支持異步交互,如語音信箱、呼 叫前轉(zhuǎn),以及能夠有效利用現(xiàn)有的底層通信協(xié)議能力?;贘AIN SLEE (JSLEE)規(guī)范的低延 遲事件引擎能夠較好地滿足上述服務(wù)需求。JAIN是SUN公司領(lǐng)導(dǎo)的一個企業(yè)團(tuán)體的合作項 目,其主要目的是定義各種必要的、用于擴(kuò)展核心JAVA平臺的JAVA程序開發(fā)接口,它通過 將各種復(fù)雜的有線、無線和IP網(wǎng)絡(luò)提供的各種通信接口都統(tǒng)一定義為系列的JAVA工業(yè)標(biāo) 準(zhǔn)接口,使得各種私有的通信網(wǎng)絡(luò)能夠演變?yōu)殚_放的、標(biāo)準(zhǔn)的網(wǎng)絡(luò)。JSLEE是JAIN定義的基 于 JAVA 的服務(wù)邏輯執(zhí)行環(huán)境 SLEE (Service LogicExecution Environment)規(guī)范,其是一 個分布式的業(yè)務(wù)組件框架,采用JavaBeans的組件模型和事件驅(qū)動機制,為業(yè)務(wù)組件提供 可靠的運行環(huán)境。SLEE可以接收各種網(wǎng)絡(luò)資源的呼叫事件,將這些事件發(fā)送到相應(yīng)的業(yè)務(wù) 邏輯去處理,同時為業(yè)務(wù)提供監(jiān)控、統(tǒng)計及管理功能。另外,為實現(xiàn)對混合服務(wù)支撐系統(tǒng)的 各項公共業(yè)務(wù)進(jìn)行統(tǒng)一管理,以構(gòu)建可運營的支撐系統(tǒng),還需提供系統(tǒng)公共服務(wù)管理功能,主要包括配置管理、故障管理、計費管理、日志管理、監(jiān)控管理、用戶管理等各個方面。為了研制基于融合開放網(wǎng)絡(luò)的混合服務(wù)支撐系統(tǒng)及其工作方法,申請人已經(jīng)做了許多前期工作。例如已經(jīng)成功研發(fā)和申請了中國發(fā)明專利申請《面向混合網(wǎng)絡(luò)服務(wù)的多任 務(wù)并發(fā)執(zhí)行系統(tǒng)及方法》(專利申請?zhí)?00910243593. 3)和《面向服務(wù)環(huán)境中基于模板實現(xiàn) BPEL子流程復(fù)用的方法及系統(tǒng)》(專利申請?zhí)?01010101686. 5)。

發(fā)明內(nèi)容
有鑒于此,本發(fā)明的目的是提供一個基于融合開放網(wǎng)絡(luò)的混合服務(wù)支撐系統(tǒng)及其 工作方法,本發(fā)明采用面向服務(wù)體系結(jié)構(gòu)S0A,基于模板復(fù)用的思想實現(xiàn)快速的服務(wù)生成, 基于服務(wù)總線集成雙引擎(動態(tài)流程執(zhí)行引擎和低延遲事件服務(wù)引擎)提供融合網(wǎng)絡(luò)服務(wù) 的運行環(huán)境,從而實現(xiàn)整合互聯(lián)網(wǎng)和電信領(lǐng)域的業(yè)務(wù)能力,提供靈活多樣的個性化服務(wù)和 支持多任務(wù)并發(fā)執(zhí)行的目的。此外,本發(fā)明還提供了相應(yīng)的服務(wù)資源接入子系統(tǒng)與服務(wù)管 理子系統(tǒng),分別實現(xiàn)對服務(wù)資源的接入和對服務(wù)進(jìn)行統(tǒng)一管理。為了達(dá)到上述發(fā)明目的,本發(fā)明提供了一種基于融合開放網(wǎng)絡(luò)的混合服務(wù)支撐系 統(tǒng),以IP骨干網(wǎng)作為包括固定電話網(wǎng)PSTN,第二代無線通信網(wǎng)2G和2. 5G、第三代移動通信 網(wǎng)3G,以及無線網(wǎng)絡(luò)Wi-Fi與Wi-MAX和分組數(shù)據(jù)網(wǎng)的各種異構(gòu)網(wǎng)絡(luò)融合的基礎(chǔ),用于支持 在融合開放網(wǎng)絡(luò)環(huán)境中,提供基于模板復(fù)用的服務(wù)生成以及多任務(wù)的并發(fā)執(zhí)行;其特征在 于該系統(tǒng)至少包括基于模板復(fù)用的服務(wù)生成子系統(tǒng),用于為業(yè)務(wù)開發(fā)者提供基于粗粒度模板的服務(wù) 開發(fā)方式、BPEL業(yè)務(wù)流程的驗證與測試支持和生成以BPEL腳本形式展現(xiàn)、能運行于所有通 用的BPEL執(zhí)行引擎的服務(wù)流程;該子系統(tǒng)設(shè)有獨立的模板模型,并提供基于模板的BPEL代 碼的復(fù)用方法和一套面向BPEL的業(yè)務(wù)開發(fā)者的、采用拖拽和點擊的圖形化方式的業(yè)務(wù)開 發(fā)環(huán)境,能夠完成針對BPEL代碼的包括服務(wù)模板的抽取、封裝、拼接和導(dǎo)出生成新業(yè)務(wù)的 復(fù)用機制,以降低業(yè)務(wù)的二次開發(fā)難度,提高開發(fā)效率;面向混合服務(wù)的多任務(wù)并發(fā)執(zhí)行子系統(tǒng),分別連接服務(wù)生成、服務(wù)資源接入和服 務(wù)管理三個子系統(tǒng),為混合服務(wù)提供穩(wěn)定可靠的業(yè)務(wù)編排及執(zhí)行環(huán)境;設(shè)有三個部件承 載服務(wù)生成子系統(tǒng)生成的服務(wù)流程、執(zhí)行依據(jù)WS-BPEL標(biāo)準(zhǔn)編寫的業(yè)務(wù)流程、調(diào)用Web服 務(wù)、發(fā)送和接受消息、進(jìn)行數(shù)據(jù)處理和故障恢復(fù)的動態(tài)流程執(zhí)行引擎,基于事件驅(qū)動的異步 通信調(diào)用、處理復(fù)雜的網(wǎng)絡(luò)協(xié)議、增加系統(tǒng)對高吞吐量與低延遲電信服務(wù)的支持的低延遲 事件服務(wù)引擎,以及采用包括分布式處理、智能路由與動態(tài)數(shù)據(jù)轉(zhuǎn)化的方法,利用不同協(xié)議 支持異構(gòu)應(yīng)用及服務(wù)之間通信的服務(wù)總線,該服務(wù)總線在動態(tài)流程執(zhí)行引擎及低延遲事件 引擎之間傳遞信息;該多任務(wù)并發(fā)執(zhí)行子系統(tǒng)還負(fù)責(zé)為生成的服務(wù)流程提供對應(yīng)的服務(wù)構(gòu) 件塊SBB(SerVice Building Block),集成接入各種網(wǎng)絡(luò)資源,同時為服務(wù)管理子系統(tǒng)提供 相應(yīng)的管理接口;服務(wù)資源接入子系統(tǒng),通過多種網(wǎng)關(guān)與各個網(wǎng)絡(luò)運營商的通信網(wǎng)絡(luò)相連接,將包 括Parlay或ParlayX、SMS、匪S、LBS、GIS、SIP和E-Mail的各種協(xié)議能力統(tǒng)一封裝成Web 服務(wù)供其他子系統(tǒng)調(diào)用,再通過相應(yīng)協(xié)議連接各種應(yīng)用系統(tǒng),通過兼容開放的標(biāo)準(zhǔn)協(xié)議接 口,接入網(wǎng)絡(luò)運營商授權(quán)的各種現(xiàn)有通信業(yè)務(wù)和實現(xiàn)互通,并提供各種通信業(yè)務(wù)的協(xié)議支 持;再通過與智能網(wǎng)相關(guān)設(shè)備的配合,實現(xiàn)與各種傳統(tǒng)話音增值業(yè)務(wù)和新業(yè)務(wù)的互通,并與多任務(wù)并發(fā)執(zhí)行子系統(tǒng)實現(xiàn)業(yè)務(wù)的數(shù)據(jù)交互;服務(wù)管理子系統(tǒng),分別連接服務(wù)生成、多任務(wù)并發(fā)執(zhí)行和服務(wù)資源接入三個子系 統(tǒng),用于通過瀏覽器方式,提供各級管理維護(hù)人員對所述三個子系統(tǒng)實現(xiàn)協(xié)調(diào)管理,對該服 務(wù)支撐系統(tǒng)執(zhí)行維護(hù)操作與提供公共服務(wù)支持,并對各系統(tǒng)業(yè)務(wù)進(jìn)行統(tǒng)一管理。為達(dá)到上述目的,本發(fā)明還提供了一種基于融合開放網(wǎng)絡(luò)的混合服務(wù)支撐系統(tǒng)的 工作方法,其特征在于包括下列操作步驟(1)服務(wù)生成子系統(tǒng)執(zhí)行服務(wù)的生成及驗證,即由服務(wù)開發(fā)者 利用服務(wù)生成子系 統(tǒng)完成服務(wù)流程的開發(fā)過程;(2)多任務(wù)并發(fā)執(zhí)行子系統(tǒng)完成服務(wù)的部署及執(zhí)行,在服務(wù)執(zhí)行過程中,多任務(wù)并 發(fā)執(zhí)行子系統(tǒng)要調(diào)用服務(wù)資源接入子系統(tǒng)所提供的通信能力;(3)在該支撐系統(tǒng)的整個運行過程中,服務(wù)管理子系統(tǒng)負(fù)責(zé)對上述服務(wù)的生成、驗 證、部署和執(zhí)行的全部流程執(zhí)行協(xié)調(diào)管理,即對整個服務(wù)支撐系統(tǒng)的全部運行過程提供公 共服務(wù)支持,并統(tǒng)一協(xié)調(diào)管理各個子系統(tǒng)的操作。本發(fā)明具有以下四方面的創(chuàng)新技術(shù)優(yōu)點(一)面向網(wǎng)絡(luò)融合本發(fā)明把各種承載業(yè)務(wù)的網(wǎng)絡(luò)能力封裝成Web服務(wù)來屏蔽 網(wǎng)絡(luò)和系統(tǒng)的異構(gòu)性和復(fù)雜性,能夠有效整合互聯(lián)網(wǎng)和電信領(lǐng)域的業(yè)務(wù)能力,提供靈活多 樣的混合服務(wù)。(二)代碼復(fù)用,拖拽式業(yè)務(wù)生成,可定制性強本發(fā)明提供的面向服務(wù)的開發(fā) 環(huán)境中運用了基于模板的代碼復(fù)用思想,其靈活性好,抽取和組合的層次多樣,還能很好 地控制服務(wù)粒度;基于圖形化的開發(fā)界面能夠完成對模板的包括抽象BPEL、實例化拼接、 服務(wù)組合、規(guī)則驗證以及文件生成的系列操作,還提供了可拖拽的編輯界面,包括模板圖 示、連線、圖形的縮小和放大,以及提供鷹眼功能,以及能夠根據(jù)不同場景對模板庫進(jìn)行基 本分類。本發(fā)明同時包含了 BPEL代碼和模板的開發(fā),能有效降低用戶的二次開發(fā)工作量; 用戶利用本發(fā)明可以用自己的擴(kuò)展標(biāo)簽來協(xié)助開發(fā),并最終轉(zhuǎn)換成可執(zhí)行的、符合規(guī)范的 WS-BPEL腳本,以便運行在不同的執(zhí)行引擎上;該系統(tǒng)能夠很好地根據(jù)用戶需求來生成其 所需的模板,具有很高的可定制性。(三)支持多用戶、大規(guī)模的多任務(wù)并發(fā)執(zhí)行本發(fā)明集成了負(fù)載均衡、接納控制 以及基于Actor模型的JAVA并發(fā)對象框架技術(shù),其中,負(fù)載均衡技術(shù)使得本發(fā)明系統(tǒng)由單 臺應(yīng)用服務(wù)器系統(tǒng)提升到應(yīng)用服務(wù)器的機群系統(tǒng)級別,從而極大地提高整個系統(tǒng)的處理能 力,為系統(tǒng)的大規(guī)模拓展應(yīng)用提供了堅實基礎(chǔ)。接納控制技術(shù)使本發(fā)明系統(tǒng)在過載時仍可 維持較高的處理量和較好的服務(wù)質(zhì)量,保障系統(tǒng)的穩(wěn)定性和動態(tài)性,使其即使在負(fù)載大幅 波動時,也具有良好的自適應(yīng)性?;贏ctor模型的JAVA并發(fā)對象框架技術(shù)使得本發(fā)明在 業(yè)務(wù)流程執(zhí)行時能夠處理并發(fā)消息,該技術(shù)建立在每個過程實例的單個線程基礎(chǔ)上,能夠 避免創(chuàng)建過多的線程,從而減弱因線程調(diào)度而對系統(tǒng)性能造成的不利影響。(四)隨需而變,可快速開發(fā)業(yè)務(wù)本發(fā)明是基于SOA的Web服務(wù)支撐系統(tǒng),具有跨 平臺服務(wù)的優(yōu)點,并且由于業(yè)務(wù)流程采用松散耦合的方式,其業(yè)務(wù)開發(fā)、處理與業(yè)務(wù)控制流 程是相互分離的,對上而言,各種能力是不同粒度的原子服務(wù)的組合,在今后業(yè)務(wù)的開發(fā)、 擴(kuò)展和修改上,該系統(tǒng)能夠充分體現(xiàn)其高度的靈活性和寬泛的適應(yīng)性,大大節(jié)省硬件開銷 所帶來的高使用成本和開發(fā)時間,而且,基于可重用服務(wù)流程的服務(wù)模板技術(shù),通過動態(tài)配置服務(wù)模板,可柔性化地將某項應(yīng)用重組為其他應(yīng)用。綜上所述,本發(fā)明具有很好的推廣應(yīng)用前景。


圖1是本發(fā)明基于融合開放網(wǎng)絡(luò)的混合服務(wù)支撐系統(tǒng)結(jié)構(gòu)組成示意圖。圖2是本發(fā)明服務(wù)生成子系統(tǒng)結(jié)構(gòu)組成示意圖。圖3是本發(fā)明面向混合服務(wù)的多任務(wù)并發(fā)執(zhí)行子系統(tǒng)結(jié)構(gòu)組成示意圖。圖4是本發(fā)明服務(wù)生成子系統(tǒng)基于模板復(fù)用的服務(wù)生成過程示意圖。圖5為本發(fā)明系統(tǒng)工作方法中的服務(wù)部署的操作流程示意圖。圖6為JAVA并發(fā)對象框架(VPU)的結(jié)構(gòu)組成示意圖。圖7為JAVA并發(fā)對象框架的執(zhí)行操作時序圖。圖8為多任務(wù)并發(fā)執(zhí)行子系統(tǒng)中規(guī)格化消息適配器的消息處理流程圖。圖9為多任務(wù)并發(fā)執(zhí)行子系統(tǒng)的運行方法的實施例的操作步驟流程圖。
具體實施例方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面結(jié)合附圖和實施例對本發(fā)明 作進(jìn)一步的詳細(xì)描述,但所舉實施例不作為對本發(fā)明的限定。參見圖1,介紹本發(fā)明基于融合開放網(wǎng)絡(luò)的服務(wù)支撐系統(tǒng)的結(jié)構(gòu)組成,該系統(tǒng)以 IP骨干網(wǎng)作為包括固定電話網(wǎng)PSTN,無線通信網(wǎng)2G、2. 5G和3G,以及無線網(wǎng)絡(luò)Wi-Fi與 Wi-MAX與分組數(shù)據(jù)網(wǎng)的各種異構(gòu)網(wǎng)絡(luò)的融合基礎(chǔ),用于支持在融合開放網(wǎng)絡(luò)環(huán)境中,提供 基于模板復(fù)用的服務(wù)生成以及多任務(wù)的并發(fā)執(zhí)行;其特征在于該系統(tǒng)至少包括基于模 板復(fù)用的服務(wù)生成子系統(tǒng),面向混合服務(wù)的多任務(wù)并發(fā)執(zhí)行子系統(tǒng),服務(wù)資源接入子系統(tǒng) 和服務(wù)管理子系統(tǒng)。該系統(tǒng)中的各部件具體功能及與其它部件的交互關(guān)系說明如下基于模板復(fù)用的服務(wù)生成子系統(tǒng),用于為業(yè)務(wù)開發(fā)者提供基于粗粒度模板的服務(wù) 開發(fā)方式、BPEL業(yè)務(wù)流程的驗證與測試支持和生成以BPEL腳本形式展現(xiàn)、能運行于所有通 用的BPEL執(zhí)行引擎的服務(wù)流程;該子系統(tǒng)設(shè)有獨立的模板模型,并提供基于模板的BPEL代 碼的復(fù)用方法和一套面向BPEL的業(yè)務(wù)開發(fā)者的圖形化方式的業(yè)務(wù)開發(fā)環(huán)境,使得業(yè)務(wù)開 發(fā)人員能采用拖拽和點擊的圖形化方式進(jìn)行開發(fā),完成針對BPEL代碼的包括服務(wù)模板的 抽取、封裝、拼接和導(dǎo)出生成新業(yè)務(wù)的復(fù)用機制,以降低業(yè)務(wù)的二次開發(fā)難度,提高開發(fā)效 率。該子系統(tǒng)擁有獨立的模板模型,定義了一套模板標(biāo)簽來擴(kuò)展模板的抽取、封裝、拼接和 導(dǎo)出的實現(xiàn)機制,以使最終得到的仍然是符合WS-BPEL規(guī)范的可執(zhí)行的BPEL文件,因此,該 子系統(tǒng)開發(fā)的業(yè)務(wù)流程的最終版本仍然是以BPEL腳本形式展現(xiàn),也能在所有通用的BPEL 執(zhí)行引擎上運行。面向混合服務(wù)的多任務(wù)并發(fā)執(zhí)行子系統(tǒng),分別連接服務(wù)生成、服務(wù)資源接入和服務(wù)管理三個子系統(tǒng),為混合服務(wù)提供穩(wěn)定可靠的業(yè)務(wù)編排及執(zhí)行環(huán)境;設(shè)有三個部件(參 見圖3)承載服務(wù)生成子系統(tǒng)生成的服務(wù)流程、執(zhí)行依據(jù)WS-BPEL標(biāo)準(zhǔn)編寫的業(yè)務(wù)流程、調(diào) 用Web服務(wù)、發(fā)送和接受消息、進(jìn)行數(shù)據(jù)處理和故障恢復(fù)的動態(tài)流程執(zhí)行引擎,基于事件驅(qū) 動的異步通信調(diào)用、處理復(fù)雜的網(wǎng)絡(luò)協(xié)議、增加系統(tǒng)對高吞吐量與低延遲電信服務(wù)的支持 的低延遲事件服務(wù)引擎,以及采用包括分布式處理、智能路由與動態(tài)數(shù)據(jù)轉(zhuǎn)化的方法,利用不同協(xié)議支持異構(gòu)應(yīng)用及服務(wù)之間通信的服務(wù)總線,該服務(wù)總線在動態(tài)流程執(zhí)行引擎及低 延遲事件引擎之間傳遞信息;該多任務(wù)并發(fā)執(zhí)行子系統(tǒng)還負(fù)責(zé)為生成的服務(wù)流程提供對應(yīng) 的服務(wù)構(gòu)件塊SBB,集成接入各種網(wǎng)絡(luò)資源,同時為服務(wù)管理子系統(tǒng)提供相應(yīng)的管理接口。服務(wù)資源接入子系統(tǒng),通過多種網(wǎng)關(guān)與各個網(wǎng)絡(luò)運營商的通信網(wǎng)絡(luò)相連接,將包 括Parlay或ParlayX、SMS、匪S、LBS、GIS、SIP和E-Mail的各種協(xié)議能力統(tǒng)一封裝成Web 服務(wù)供其他子系統(tǒng)調(diào)用,再通過相應(yīng)協(xié)議連接各種應(yīng)用系統(tǒng),通過兼容開放的標(biāo)準(zhǔn)協(xié)議接 口,接入網(wǎng)絡(luò)運營商授權(quán)的各種現(xiàn)有通信業(yè)務(wù)和實現(xiàn)互通,并提供各種通信業(yè)務(wù)的協(xié)議支 持;再通過與智能網(wǎng)相關(guān)設(shè)備的配合,實現(xiàn)與各種傳統(tǒng)話音增值業(yè)務(wù)和新業(yè)務(wù)的互通,并與 多任務(wù)并發(fā)執(zhí)行子系統(tǒng)實現(xiàn)業(yè)務(wù)的數(shù)據(jù)交互。該服務(wù)資源接入子系統(tǒng)設(shè)有下述接入網(wǎng)關(guān)Par lay/Par IayX網(wǎng)關(guān),分別連接PSTN網(wǎng)、2G、2. 5G、3G移動網(wǎng)和下一代網(wǎng)絡(luò)NGN,用 于接入相關(guān)網(wǎng)絡(luò)執(zhí)行網(wǎng)絡(luò)運營商授權(quán)業(yè)務(wù)的交互;短消息服務(wù)SMS網(wǎng)關(guān),用于連接移動通信網(wǎng)2G、2.5G和3G,提供短消息類的授權(quán)業(yè) 務(wù);多媒體消息服務(wù)MMS網(wǎng)關(guān),用于連接移動網(wǎng)2G、2.5G和3G,提供多媒體消息類的授 權(quán)業(yè)務(wù);LBS網(wǎng)關(guān),用于連接移動網(wǎng)2G、2. 5G和3G,提供移動終端的定位業(yè)務(wù);GIS網(wǎng)關(guān),用于連接Internet中的地理信息服務(wù),提供地理信息業(yè)務(wù);SIP網(wǎng)關(guān),用于連接3G移動網(wǎng)絡(luò)、NGN網(wǎng)絡(luò)、Wi-Fi網(wǎng)絡(luò)、Wi-MAX網(wǎng)絡(luò)和因特網(wǎng),提 供基于IP的話務(wù)業(yè)務(wù);Mail網(wǎng)關(guān),用于連接Internet中的郵件服務(wù)器,與服務(wù)資源接入子系統(tǒng)的其它網(wǎng) 關(guān)共同向用戶提供mail提醒和轉(zhuǎn)發(fā)業(yè)務(wù);Web服務(wù)網(wǎng)關(guān),用于連接Internet,向用戶提供web查詢及推薦業(yè)務(wù);上述各個網(wǎng)關(guān)分別連接多任務(wù)并發(fā)執(zhí)行子系統(tǒng),向多任務(wù)并發(fā)執(zhí)行子系統(tǒng)發(fā)送業(yè) 務(wù)請求并接收其發(fā)來的業(yè)務(wù)指令。服務(wù)管理子系統(tǒng),分別連接服務(wù)生成、多任務(wù)并發(fā)執(zhí)行和服務(wù)資源接入三個子系 統(tǒng),用于通過瀏覽器方式,提供各級管理維護(hù)人員對所述三個子系統(tǒng)實現(xiàn)協(xié)調(diào)管理,對該服 務(wù)支撐系統(tǒng)執(zhí)行維護(hù)操作與提供公共服務(wù)支持,并對各系統(tǒng)業(yè)務(wù)進(jìn)行統(tǒng)一管理。該服務(wù)管 理子系統(tǒng)對本發(fā)明服務(wù)支撐系統(tǒng)執(zhí)行維護(hù)操作與提供的公共服務(wù)支持的具體內(nèi)容包括配置管理,執(zhí)行包括配置計費數(shù)據(jù)和對配置數(shù)據(jù)的管理、系統(tǒng)與各個子系統(tǒng)的操 作數(shù)據(jù)自動備份的功能;故障管理,執(zhí)行包括對該服務(wù)支撐系統(tǒng)的運行狀態(tài)的監(jiān)視和故障監(jiān)測、故障告警、 故障定位、故障日志和故障分析的功能;安全管理,執(zhí)行接入認(rèn)證與鑒權(quán)操作,支持分級的管理用戶接入方式,以使不同權(quán) 限的管理用戶執(zhí)行相應(yīng)的不同操作,還支持多點操作和定時啟動命令;日志管理,執(zhí)行包括安全日志、日志管理的功能;該安全日志作為安全管理的重要 證據(jù),會將所有操作員的關(guān)鍵操作都自動地記錄于安全日志;計費和業(yè)務(wù)管理,能夠支持多種計費方式,以便對短信及數(shù)據(jù)業(yè)務(wù),支持按流量計費和按內(nèi)容計費;對傳統(tǒng)話音服務(wù)及視頻服務(wù),支持按時間計費。以上可知,服務(wù)管理子系統(tǒng)是協(xié)調(diào)本發(fā)明支撐系統(tǒng)各部件正常工作的控制中樞,也可以采用專設(shè)服務(wù)器實現(xiàn)上述管理功能。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,通過現(xiàn)有技術(shù)(例 如控制芯片或單獨的PC等)實行上述服務(wù)管理子系統(tǒng)的協(xié)調(diào)管理的工作是很容易實現(xiàn)的。 因該部件不是本發(fā)明系統(tǒng)的重點,故不作贅述。參見圖2,具體介紹本發(fā)明服務(wù)生成子系統(tǒng)的組成結(jié)構(gòu)。該子系統(tǒng)是采 用MVC(Model-View-Controller)的設(shè)計思路和基于Eclipse插件開發(fā)技術(shù),利用 EMF(Eclipse Model Framework)禾口GEF(Graphical Eclipse Framework)實現(xiàn)的。其中 EMF 用來完成建模工作,GEF用來完成圖形化功能。
服務(wù)生成子系統(tǒng)是基于行業(yè)領(lǐng)域的相關(guān)考慮,為服務(wù)開發(fā)人員設(shè)計了一套定制自 己所需的BPEL模板,即模板抽取機制;因為在開發(fā)BPEL流程,尤其是開發(fā)行業(yè)領(lǐng)域相關(guān)流 程時,有不少業(yè)務(wù)邏輯是類似的或部分類似的。如果能夠?qū)⑦@些會被頻繁用到的業(yè)務(wù)邏輯 封裝成模板,在開發(fā)時作為一個整體使用,必然給開發(fā)人員帶來極大的便利。該子系統(tǒng)設(shè) 有模型層、控制層、用戶接口 UI層和驗證層。模型層是整個子系統(tǒng)的基礎(chǔ),提供整個子系 統(tǒng)的圖形化和各項功能所需要的模型,主要建立了兩個基本模型=BPEL模型和模板模型。 控制層用于對該子系統(tǒng)中的整個可視化進(jìn)行控制操作,并且實現(xiàn)了 BPEL腳本解析、模板抽 取和封裝、服務(wù)組合和新業(yè)務(wù)導(dǎo)出的功能。UI層是該子系統(tǒng)的可視介面,主要實現(xiàn)了調(diào)色 板、編輯窗口、屬性視圖、大綱視圖和向?qū)б晥D等功能。驗證層的功能是在該子系統(tǒng)流程的 不同階段對該子系統(tǒng)中的相關(guān)操作進(jìn)行必要的驗證。主要針對三個階段實施相應(yīng)的驗證 模板抽取、模板組合和模板導(dǎo)出,進(jìn)而也對該子系統(tǒng)的各個層次的操作執(zhí)行相應(yīng)的驗證模 型建立、BPEL腳本解析、模板抽取、服務(wù)組合和新業(yè)務(wù)生成等操作。該子系統(tǒng)有良好的靈活 性和定制性,能讓用戶使用該子系統(tǒng)建立自己的模板庫,從而將各人感興趣的BPEL業(yè)務(wù)邏 輯分別封裝成模板保存到模板庫中。該子系統(tǒng)提供給用戶一套完整的模板抽取和封裝的功 能。這些抽取出來的模板能有效降低用戶的開發(fā)難度。參見圖3,具體介紹面向混合服務(wù)的多任務(wù)并發(fā)執(zhí)行子系統(tǒng)的組成結(jié)構(gòu)中的三個 主要部件服務(wù)總線,動態(tài)流程執(zhí)行引擎和低延遲事件服務(wù)引擎。其中,提供消息傳輸路由和執(zhí)行轉(zhuǎn)發(fā)操作的服務(wù)總線,用于接收客戶端通過HTTP協(xié)議 承載包含業(yè)務(wù)請求的SOAP消息,將其轉(zhuǎn)換為規(guī)格化消息,轉(zhuǎn)發(fā)給后續(xù)部件處理;該服務(wù)總 線設(shè)有兩個核心功能單元=HTTP綁定組件和規(guī)格化消息路由器。HTTP協(xié)議綁定組件用于偵 聽和接收來自客戶端的HTTP請求,該組件接收到SOAP消息后,解析并處理HTTP協(xié)議請求 包,再將該SOAP消息主體封裝成規(guī)格化消息(該規(guī)格化消息是指將包含特定上下文數(shù)據(jù)的 消息轉(zhuǎn)換成服務(wù)總線中規(guī)格化路由器能理解和通用的表現(xiàn)形式)和設(shè)置消息交換的服務(wù) 端點屬性(即將目的服務(wù)引擎設(shè)定為動態(tài)流程執(zhí)行引擎)后,將業(yè)務(wù)服務(wù)請求消息傳遞到 規(guī)格化消息路由器,進(jìn)而路由到動態(tài)流程執(zhí)行引擎。規(guī)格化消息路由器除了用于路由經(jīng)由 HTTP協(xié)議綁定組件處理的業(yè)務(wù)請求消息外,還負(fù)責(zé)在來自動態(tài)流程執(zhí)行引擎和低延遲事件 服務(wù)引擎的雙引擎之間路由彼此交互的消息,并將其路由到相應(yīng)的組件進(jìn)行處理。動態(tài)流程執(zhí)行引擎相對獨立地直接部署于服務(wù)總線,用于直接采用規(guī)格化消息與 服務(wù)總線進(jìn)行交互,并發(fā)執(zhí)行原子服務(wù)組合后生成的業(yè)務(wù)控制流程,監(jiān)聽并接收服務(wù)總線 轉(zhuǎn)發(fā)的包含客戶端請求的規(guī)格化業(yè)務(wù)服務(wù)消息,創(chuàng)建相應(yīng)業(yè)務(wù)控制流程的BPEL業(yè)務(wù)流程 實例并進(jìn)行處理,并在處理過程中,通過Java并發(fā)對象框架實現(xiàn)應(yīng)用級別的并發(fā),然后生 成調(diào)用低延遲事件服務(wù)引擎中服務(wù)能力組件的包含相應(yīng)業(yè)務(wù)請求的SOAP消息,再將其發(fā)送到服務(wù)總線,設(shè)置消息交換的服務(wù)端點屬性,即將目的服務(wù)引擎指定為低延遲事件服務(wù) 引擎,再通過服務(wù)總線路由到低延遲事件服務(wù)引擎。動態(tài)流程執(zhí)行引擎設(shè)有流程編譯器、流程執(zhí)行器、抽象流程管理器和BPEL業(yè)務(wù) 流程庫。流程編譯器負(fù)責(zé)將BPEL源文件(包括BPEL流程文件、WSDL文件和schema文件) 編譯成適合于流程執(zhí)行器執(zhí)行的文件,輸出編譯好的文件或源文件中的錯誤信息列表,其 編譯生成的BPEL文件是在結(jié)構(gòu)上跟BPEL流程文件類似的對象模型文件,包括BPEL流程中 的各種引用(如變量名),WSDL文件和類型信息,其編譯后的文件是流程執(zhí)行器所需的唯一 文件。流程執(zhí)行器主要用于執(zhí)行編譯后的BPEL流程,包括何時創(chuàng)建新實例,接收的新消息 轉(zhuǎn)送到哪個實例,以及給用戶提供流程管理API,讓用戶與執(zhí)行引擎進(jìn)行交互。為使該執(zhí)行 引擎可靠運行,由數(shù)據(jù)訪問對象模塊提供數(shù)據(jù)持久性,因此它通過Java并發(fā)對象框架實現(xiàn) 應(yīng)用級別的并發(fā)機制。抽象流程管理器負(fù)責(zé)完成流程執(zhí)行器與外界的交互,主要功能是為 流程執(zhí)行器提供通信通道,將流程執(zhí)行器直接嵌入到具體的執(zhí)行環(huán)境中,如JBI抽象流程 管理器是實現(xiàn)流程執(zhí)行器與JBI的低延遲事件服務(wù)引擎等組件交互。BPEL業(yè)務(wù)流程庫用于 存儲包括已創(chuàng)建的服務(wù)流程實例、實例所等待的消息、每個實例的BPEL變量值、每個實例 的BPEL伙伴鏈接值以及每個服務(wù)流程實例在流程執(zhí)行器中的執(zhí)行狀態(tài)等信息。
低延遲事件服務(wù)引擎也是相對獨立地直接部署在服務(wù)總線上,用于直接采用規(guī)格 化消息與服務(wù)總線進(jìn)行交互,提供動態(tài)流程執(zhí)行引擎調(diào)用的相應(yīng)業(yè)務(wù)原子服務(wù),該部件基 于事件驅(qū)動,內(nèi)部采用服務(wù)構(gòu)件塊SBB消息機制,減少事務(wù)處理的等待延遲,其工作方式是 從服務(wù)總線接收包含業(yè)務(wù)請求的SOAP消息后,掃描該事件狀態(tài),將該事件遞交到服務(wù)能力 組件中該事件已注冊的對應(yīng)服務(wù)構(gòu)件塊,生成相應(yīng)業(yè)務(wù)的原子服務(wù),再與服務(wù)資源接入子 系統(tǒng)進(jìn)行交互,調(diào)用服務(wù)資源接入子系統(tǒng)提供的服務(wù)資源。低延遲事件服務(wù)引擎設(shè)有三個功能單元規(guī)格化消息適配器、服務(wù)能力組件和資 源適配器。規(guī)格化消息適配器用于接收規(guī)格化消息路由器上傳的規(guī)格化消息,并對其進(jìn)行 解析,將其定義成低延遲事件服務(wù)引擎能夠識別的類型,再將其發(fā)送到服務(wù)能力組件;還 負(fù)責(zé)接收從服務(wù)能力組件傳來的響應(yīng),將其封裝成規(guī)格化消息返回給服務(wù)總線。服務(wù)能力 組件是該引擎的核心單元,用于對動態(tài)流程執(zhí)行引擎所需原子服務(wù)進(jìn)行業(yè)務(wù)邏輯控制,并 為服務(wù)構(gòu)建塊提供運行環(huán)境,再通過資源適配器與服務(wù)資源接入子系統(tǒng)建立連接和交互通 信,獲取網(wǎng)絡(luò)服務(wù)資源,將服務(wù)響應(yīng)返回給規(guī)格化消息適配器。資源適配器用于適配網(wǎng)絡(luò)資 源或JAVA平臺環(huán)境J2EE資源,將發(fā)生變化的資源以事件形式發(fā)送到服務(wù)能力組件,由服務(wù) 能力組件將資源事件觸發(fā)到業(yè)務(wù)實例進(jìn)行業(yè)務(wù)邏輯處理;資源適配器還將底層網(wǎng)絡(luò)資源抽 象成應(yīng)用程序接口 API提供給業(yè)務(wù)邏輯使用。下面介紹本發(fā)明基于融合開放網(wǎng)絡(luò)的混合服務(wù)支撐系統(tǒng)的工作方法,主要包括下 列三個操作步驟步驟1、服務(wù)生成子系統(tǒng)執(zhí)行服務(wù)的生成及驗證,即由服務(wù)開發(fā)者利用服務(wù)生成子 系統(tǒng)完成服務(wù)流程的開發(fā)過程;步驟2、多任務(wù)并發(fā)執(zhí)行子系統(tǒng)完成服務(wù)的部署及執(zhí)行,在服務(wù)執(zhí)行過程中,多任 務(wù)并發(fā)執(zhí)行子系統(tǒng)要調(diào)用服務(wù)資源接入子系統(tǒng)所提供的通信能力;步驟3、在該支撐系統(tǒng)的整個運行過程中,服務(wù)管理子系統(tǒng)負(fù)責(zé)對上述服務(wù)的生 成、驗證、部署和執(zhí)行的全部流程執(zhí)行協(xié)調(diào)管理,即對整個服務(wù)支撐系統(tǒng)的全部運行過程提供公共服務(wù)支持,并統(tǒng)一協(xié)調(diào)管理各個子系統(tǒng)的操作。參見圖4,具體描述上述步驟1的操作內(nèi)容(11)抽取服務(wù)模板服務(wù)開發(fā)者利用服務(wù)生成子系統(tǒng),通過基于模板的機制對要 重復(fù)利用的BPEL片段或服務(wù)模板進(jìn)行有效封裝后,保存于模板庫;在該步驟中,為有效復(fù)用BPEL代碼,先要完成對BPEL代碼段的描述或定義;當(dāng)服務(wù)開發(fā)者抽取其準(zhǔn)備封裝的BPEL代碼段后,服務(wù)生成子系統(tǒng)自動將其封裝為統(tǒng)一形式的 模板,通過系統(tǒng)解析,該模板詳細(xì)記錄該被抽取的BPEL代碼段的接口信息。所以,服務(wù)生成 子系統(tǒng)必須先提供一套模板封裝的模型定義,用于保存所需信息。服務(wù)生成子系統(tǒng)采用自定義的擴(kuò)展標(biāo)簽完成對模板的定義,即通過定義模板的模 型shema來實現(xiàn)建模過程;對于要被復(fù)用的BPEL代碼段,可以理解為一個函數(shù)中的代碼,模 板是要給該代碼段進(jìn)行類似函數(shù)接口的定義和描述。所以每個模板在給用戶使用時,必須 聲明其中的下述各個接口定義;〈template〉保存當(dāng)前模板的包括命名空間和模板名稱的自身信息;〈inputVariable〉保存模板中作為輸入變量的包括輸入消息中的所有輸入?yún)?shù)和 參數(shù)結(jié)構(gòu),以及每個輸入?yún)?shù)用于哪個活動的輸入變量各種信息;〈outputVariable〉保存模板中作為輸出變量的包括輸出消息中的所有輸出參數(shù) 和參數(shù)結(jié)構(gòu),以及每個輸出參數(shù)用于哪個活動的輸出變量的各種信息;〈element〉說明在變量中定義的具體參數(shù)的信息;〈condition〉保存模板中作為控制條件的包括該控制條件的內(nèi)容及其所在的控制 活動和抽取時用戶增加的注釋的相關(guān)信息;〈activity〉保存在抽取的BPEL代碼片段中包含的BPEL活動信息;<bpelCode>保存模板封裝的BPEL代碼片段;<wsdlCode>保存模板封裝的BPEL代碼片段相關(guān)聯(lián)的WSDL文件信息。(12)組裝服務(wù)模板服務(wù)開發(fā)者設(shè)計業(yè)務(wù)流程時,利用服務(wù)生成子系統(tǒng)提供的圖 形化開發(fā)環(huán)境,采用拖拽和點擊的圖形化方式將BPEL流程的開發(fā)與模板的拼裝融合在一 起,即將已生成的服務(wù)模板導(dǎo)入到當(dāng)前業(yè)務(wù)流程的編輯窗口中,供用戶按需使用;使服務(wù)開 發(fā)者能輕松復(fù)用已經(jīng)抽取出來的模板,減少二次開發(fā)時間,實現(xiàn)高效開發(fā)。該步驟包含下述操作內(nèi)容當(dāng)用戶打開圖形編輯窗口,準(zhǔn)備開發(fā)一個新的業(yè)務(wù)流 程時,服務(wù)生成子系統(tǒng)在提供BPEL代碼的基本編輯能力以外,還提供基于模板的流程編輯 方式即自動讀入保存在模板庫中的各個模板信息,將這些模板導(dǎo)入到當(dāng)前的業(yè)務(wù)流程編 輯窗口中,以供用戶隨時選用;這樣用戶就能方便地復(fù)用已經(jīng)抽取出來的模板,再為所選用 的模板定義變量信息和控制條件,同時配合BPEL活動進(jìn)行模板的控制和補全,就能快速組 合開發(fā)出用戶所需的新的業(yè)務(wù)流程。已經(jīng)建立對應(yīng)的模板庫后,就可以模板庫中的模板作 為起點,配合上BPEL的基本活動和容器活動實現(xiàn)靈活的業(yè)務(wù)開發(fā)方式。(13)導(dǎo)出服務(wù)模板在用戶完成基于模板的業(yè)務(wù)流程的編輯開發(fā)工作后,服務(wù) 生成子系統(tǒng)要將此時得到的基于擴(kuò)展標(biāo)簽完成的包含有模板的業(yè)務(wù)流程文件不是標(biāo)準(zhǔn)的 BPEL腳本,無法部署到BPEL執(zhí)行引擎中運行。該子系統(tǒng)的導(dǎo)出機制能夠?qū)0宓牧鞒?轉(zhuǎn)換為標(biāo)準(zhǔn)的可執(zhí)行的BPEL文件,并刪除以前對BPEL片段增加的封裝,從而可以在多任務(wù) 并發(fā)執(zhí)行子系統(tǒng)或任何BPEL執(zhí)行引擎上運行。
(14)驗證服務(wù)生成的全過程在上述三個步驟的業(yè)務(wù)流程開發(fā)過程中,服務(wù)生成 子系統(tǒng)對其分別執(zhí)行包括BPEL語法驗證和模板語義驗證的支持,保證服務(wù)的正確性。該步 驟包含以下操作內(nèi)容在抽取服務(wù)模板階段,對作為模板的BPEL文件和相關(guān)的WSDL文件進(jìn)行BPEL語法 驗證,保證服務(wù)模板的抽取是在正確的流程基礎(chǔ)上執(zhí)行的;在組裝服務(wù)模板階段,對當(dāng)前編輯的服務(wù)流程進(jìn)行BPEL語法驗證,同時在編輯過 程中進(jìn)行語義驗證;在服務(wù)開發(fā)者對模板的輸入或輸出的變量進(jìn)行匹配時,提醒其完成相 應(yīng)操作;當(dāng)模板充當(dāng)流程側(cè)起點時,檢驗?zāi)0逯惺欠裼心軌騽?chuàng)建實例的receive或pick活 動??傊襟E1的服務(wù)生成及驗證過程的實質(zhì)是生成用BPEL描述的服務(wù)的流程,通 過該流程,使得人們知道對于每個服務(wù),先執(zhí)行什么操作,后執(zhí)行什么操作,需要調(diào)用哪些 原子服務(wù),但是這些服務(wù)流程的具體執(zhí)行要有一個執(zhí)行環(huán)境,該執(zhí)行環(huán)境可以完成對服務(wù) 流程的部署,原子服務(wù)的提供以及能夠調(diào)用外部的通信資源,這些工作在本發(fā)明中是由多 任務(wù)并發(fā)執(zhí)行子系統(tǒng)來完成,也就是步驟2的操作。下面具體描述步驟2的下述兩個操作內(nèi)容(21)服務(wù)的部署將每個已經(jīng)完成的服務(wù)所涉及的服務(wù)流程與原子服務(wù)等進(jìn)行 組合,再打包部署到多任務(wù)并發(fā)執(zhí)行子系統(tǒng)中,以便在用戶的服務(wù)請求到達(dá)時,該支撐系統(tǒng) 能夠根據(jù)具體請求提供相應(yīng)的服務(wù)。(22)服務(wù)的執(zhí)行,當(dāng)用戶的服務(wù)請求到來時,多任務(wù)并發(fā)執(zhí)行子系統(tǒng)根據(jù)服務(wù)請 求的具體內(nèi)容,為該請求分配匹配的已完成部署的服務(wù)流程,再由該服務(wù)流程調(diào)用相關(guān)原 子服務(wù)和對應(yīng)的外部通信資源,完成整個服務(wù)的執(zhí)行過程。這里先介紹服務(wù)在被用戶請求執(zhí)行之前,服務(wù)部署的具體細(xì)節(jié)本發(fā)明多任務(wù)并發(fā)執(zhí)行子系統(tǒng)中的基于JBI規(guī)范的服務(wù)總線可視為一個大容器, 要構(gòu)成一個系統(tǒng),里面還要部署多個小容器,如動態(tài)流程執(zhí)行引擎和低延遲事件服務(wù)引擎。 若要執(zhí)行業(yè)務(wù),還要將相應(yīng)的業(yè)務(wù)描述進(jìn)行組合,然后打包部署到服務(wù)總線中;以便服務(wù)請 求到達(dá)時,該系統(tǒng)能夠根據(jù)具體請求提供相應(yīng)的服務(wù)。對于每個特定業(yè)務(wù)來講,其業(yè)務(wù)控制 流程由BPEL代碼段實現(xiàn),該業(yè)務(wù)的原子服務(wù)則由低延遲事件服務(wù)引擎實現(xiàn),并由服務(wù)總線 中的HTTP協(xié)議綁定組件監(jiān)聽接收相應(yīng)的業(yè)務(wù)請求。參見圖5,說明每個服務(wù)的部署的下述操作內(nèi)容步驟A、分析該服務(wù)的需求和實現(xiàn)該服務(wù)所需的各個原子服務(wù);再將實現(xiàn)該服務(wù) 的各個原子服務(wù)部署到低延遲事件服務(wù)引擎中;步驟B、為實現(xiàn)該服務(wù)的多個原子服務(wù)編輯一個服務(wù)描述文件,并將其打包成一個 能夠部署到低延遲事件服務(wù)引擎的服務(wù)單元SU (Service Unit);步驟C、為服務(wù)生成子系統(tǒng)生成的BPEL業(yè)務(wù)控制流程編寫一個能部署于動態(tài)流程 執(zhí)行引擎的部署描述文件,再將該部署描述文件、編輯好的BPEL控制流程和相應(yīng)的WSDL文 件打包成一個能部署于動態(tài)流程執(zhí)行引擎的服務(wù)單元;步驟D、為該服務(wù)編寫一個HTTP綁定組件描述文件,用于接收客戶端的客戶業(yè)務(wù) 請求,打包成為能夠部署于HTTP協(xié)議綁定組件的服務(wù)單元;步驟E、將上述三個步驟分別產(chǎn)生的三個服務(wù)單元打包成一個完整的服務(wù)集SA (Service Assembly,參見圖5所示),該服務(wù)集SA包就是整個服務(wù)的部署包;再將該部署包部署于多任務(wù)并發(fā)執(zhí)行子系統(tǒng),然后,就能夠提供給用戶通過客戶端調(diào)用。本發(fā)明方法中的步驟3的管理功能主要由服務(wù)管理子系統(tǒng)執(zhí)行,該子系統(tǒng)也是構(gòu) 建可運營的服務(wù)支撐平臺的重要組成部分,用于執(zhí)行包括業(yè)務(wù)服務(wù)的計費、認(rèn)證、鑒權(quán)、配 置和對用戶進(jìn)行管理等各種運行和維護(hù)的功能。因為,前面已經(jīng)對該子系統(tǒng)的相關(guān)功能作 了詳細(xì)說明,這里就不再贅述。參見圖6和圖7,介紹動態(tài)流程執(zhí)行引擎中,基于ACTOR并發(fā)模型的JAVA并發(fā)對象 框架及其執(zhí)行流程。JAVA并發(fā)對象框架的實現(xiàn)是基于ACTOR模型。ACTOR模型是著名的并發(fā)計算模 型,目前其已成為研制并發(fā)面向?qū)ο笳Z言的一種重要的基礎(chǔ)模型。ACTOR模型的基本特點 是在ACTOR模型中,所有對象都是actor,也就是actor是ACTOR模型的原子單位,消息是 actor對象之間通信的唯一方式。動態(tài)流程執(zhí)行引擎中的JAVA并發(fā)對象框架遵循ACTOR模型的基本思想,在JAVA 并發(fā)對象框架下,所有事物都可以作為一個JAVA并發(fā)對象,消息是JAVA并發(fā)對象之間通 信的唯一方式,所有消息發(fā)送都是并行的;JAVA并發(fā)對象包括消息輸入隊列、調(diào)度機制、方 法、狀態(tài),以及收到消息時將采取的動作。圖6所示是JAVA并發(fā)對象框架結(jié)構(gòu)組成示意圖,在JAVA并發(fā)對象框架中,JAVA并 發(fā)對象執(zhí)行單元(VPU)是執(zhí)行JAVA并發(fā)對象的地方,VPU主要負(fù)責(zé)把JAVA并發(fā)對象注入 到執(zhí)行隊列中,并創(chuàng)建和執(zhí)行一個JAVA并發(fā)對象線程,運行JAVA并發(fā)對象;并在該對象運 行結(jié)束后,立即釋放該線程。也就是說,在JAVA并發(fā)對象框架下,每個JAVA并發(fā)對象都是 各自獨立的,彼此之間通過消息進(jìn)行交互,只是在消息到來時,借用一個線程執(zhí)行,且在執(zhí) 行后立即釋放。因此,JAVA并發(fā)對象框架無共享、基于消息等特點,使得死鎖、狀態(tài)共享、異 步調(diào)用等困擾多線程編程的問題不復(fù)存在。參見圖7,依據(jù)JAVA并發(fā)對象框架的操作執(zhí)行時序,介紹其執(zhí)行流程(1)創(chuàng)建在動態(tài)流程執(zhí)行引擎中,抽象流程管理器接收到來自服務(wù)總線的規(guī)格 化消息請求,配置和啟動流程執(zhí)行器,流程執(zhí)行器根據(jù)上下文創(chuàng)建JAVA并發(fā)對象框架中的 并發(fā)對象執(zhí)行單元VPU ;(2)注入VPU將相關(guān)的JAVA并發(fā)對象注入到JAVA并發(fā)對象執(zhí)行隊列;(3)出列JAVA并發(fā)對象出執(zhí)行隊列;(4)創(chuàng)建JAVA并發(fā)對象框架中的VPU創(chuàng)建JAVA并發(fā)對象線程;(5)執(zhí)行JAVA并發(fā)對象占用該已創(chuàng)建的線程,運行該JAVA并發(fā)對象中的方法。因此,JAVA并發(fā)對象框架的并發(fā)性的管理是建立于每個過程實例的單個線程基礎(chǔ) 上,避免了創(chuàng)建過多的線程而帶來的線程調(diào)度對系統(tǒng)性能的影響,而且線程的分配是在消 息到達(dá)時進(jìn)行的,進(jìn)一步避免了過多線程的使用。參見圖8,介紹本發(fā)明中的多任務(wù)并發(fā)執(zhí)行子系統(tǒng)的低延遲事件服務(wù)引擎中的規(guī) 格化消息適配器對來自服務(wù)總線的消息的處理流程。其處理過程主要包含兩個內(nèi)容消息 解析和事件發(fā)送,具體流程如下(1)規(guī)格化消息適配器接收從服務(wù)總線的規(guī)格化消息路由器發(fā)送來的業(yè)務(wù)請求規(guī) 格化消息。
(2)從規(guī)格化消息中獲取消息載荷,該消息載荷的核心內(nèi)容是SOAP消息。(3)解析SOAP消息,從其中取出每個標(biāo)簽對應(yīng)的值,存儲在一個哈希表對象中,并 返回該哈希表對象。然后,對基于XML文檔格式的SOAP消息的處理就轉(zhuǎn)換為對常用數(shù)據(jù)類 型的哈希表的處理。(4)從哈希表中獲取消息請求服務(wù)的服務(wù)名,再根據(jù)該服務(wù)名通過對應(yīng)的服務(wù)方 法調(diào)用該服務(wù)所需的具體事件屬性。(5)找到該事件向服務(wù)能力組件傳輸?shù)纳舷挛耐ǖ佬畔ⅲ蚍?wù)能力組件轉(zhuǎn)發(fā),從 而觸發(fā)相應(yīng)的業(yè)務(wù)處理邏輯。參見圖9,介紹本發(fā)明進(jìn)行的實施試驗情況即以多媒體會議為業(yè)務(wù)場景,介紹本 發(fā)明面向混合服務(wù)的多任務(wù)并發(fā)執(zhí)行子系統(tǒng)中,客戶端從發(fā)起多媒體會議服務(wù)請求到接收 到響應(yīng)的整個消息交互流程的各個操作步驟(1)客戶端接收到用戶輸入的發(fā)起會議服務(wù)請求后,先將該請求傳送到服務(wù)總線, 服務(wù)總線上的HTTP綁定組件接收到該會議服務(wù)請求消息。(2)HTTP綁定組件創(chuàng)建消息交換實例,并根據(jù)需求將接收到的消息轉(zhuǎn)換成規(guī)格化 格式直接放入消息交換實例中,設(shè)置該消息交換的服務(wù)端點屬性,然后將該會議服務(wù)請求 消息傳送到規(guī)格化消息路由器。(3)規(guī)格化消息路由器接收到會議服務(wù)請求消息,解析消息頭,尋找目的服務(wù)引 擎,創(chuàng)建消息流的處理實例,再將該服務(wù)請求轉(zhuǎn)發(fā)至動態(tài)流程執(zhí)行引擎,由動態(tài)流程執(zhí)行引 擎啟動和調(diào)用該會議服務(wù)請求所對應(yīng)的會議業(yè)務(wù)邏輯的BPEL服務(wù)流程。(4)會議業(yè)務(wù)邏輯的BPEL服務(wù)流程對該服務(wù)請求進(jìn)行分析處理后,將該調(diào)用會議 能力組件的請求消息發(fā)送到規(guī)格化消息路由器。(5)規(guī)格化消息路由器在動態(tài)流程執(zhí)行引擎和低延遲事件服務(wù)引擎間建立另一個 消息流的處理實例,將該調(diào)用會議能力組件的請求消息經(jīng)由服務(wù)總線發(fā)送到低延遲事件服 務(wù)引擎。(6)低延遲事件服務(wù)引擎通過其規(guī)格化消息適配器接收到來自服務(wù)總線的業(yè)務(wù)請 求后,將業(yè)務(wù)請求映射到服務(wù)能力組件進(jìn)行處理及響應(yīng)。(7)經(jīng)過會議服務(wù)能力組件處理后,該調(diào)用服務(wù)會議能力組件的請求消息沿著請 求路徑返回規(guī)格化消息路由器,同時,上述步驟建立的消息流的流處理通道也被遞交給會 議業(yè)務(wù)邏輯的BPEL業(yè)務(wù)流程;再通過服務(wù)資源接入子系統(tǒng)進(jìn)行交互,調(diào)用服務(wù)資源接入子 系統(tǒng)的服務(wù)資源,由會議服務(wù)能力組件執(zhí)行該服務(wù)。(8)會議業(yè)務(wù)邏輯的BPEL業(yè)務(wù)流程將會議能力組件對調(diào)用會議能力組件的請求 消息的處理及響應(yīng)結(jié)果,重新組合成用戶所需的Web服務(wù)格式,再次返回到規(guī)格化消息路 由器,該步驟中的消息沿上述步驟建立的消息流的流處理通道返回到HTTP綁定組件;HTTP 綁定組件將接收到的該消息轉(zhuǎn)換形式后,作為會議服務(wù)請求消息的響應(yīng)結(jié)果返回。(9)應(yīng)用服務(wù)器將Web服務(wù)格式的會議服務(wù)請求消息的響應(yīng)結(jié)果轉(zhuǎn)換成會議請求 消息的響應(yīng)結(jié)果后,返回給客戶端,并將對會議請求消息的最終響應(yīng)結(jié)果返回遞交給用戶 端。申請人:已經(jīng)對本發(fā)明進(jìn)行了多次實施仿真試驗,試驗的數(shù)據(jù)結(jié)果表明,試驗是成 功的,實現(xiàn)了發(fā)明目的。
權(quán)利要求
一種基于融合開放網(wǎng)絡(luò)的混合服務(wù)支撐系統(tǒng),以IP骨干網(wǎng)作為包括固定電話網(wǎng)PSTN,第二代無線通信網(wǎng)2G和2.5G、第三代移動通信網(wǎng)3G,以及無線網(wǎng)絡(luò)Wi-Fi與Wi-MAX和分組數(shù)據(jù)網(wǎng)的各種異構(gòu)網(wǎng)絡(luò)融合的基礎(chǔ),用于支持在融合開放網(wǎng)絡(luò)環(huán)境中,提供基于模板復(fù)用的服務(wù)生成以及多任務(wù)的并發(fā)執(zhí)行;其特征在于該系統(tǒng)至少包括基于模板復(fù)用的服務(wù)生成子系統(tǒng),用于為業(yè)務(wù)開發(fā)者提供基于粗粒度模板的服務(wù)開發(fā)方式、BPEL業(yè)務(wù)流程的驗證與測試支持和生成以BPEL腳本形式展現(xiàn)、能運行于所有通用的BPEL執(zhí)行引擎的服務(wù)流程;該子系統(tǒng)設(shè)有獨立的模板模型,并提供基于模板的BPEL代碼的復(fù)用方法和一套面向BPEL的業(yè)務(wù)開發(fā)者的、采用拖拽和點擊的圖形化方式的業(yè)務(wù)開發(fā)環(huán)境,能夠完成針對BPEL代碼的包括服務(wù)模板的抽取、封裝、拼接和導(dǎo)出生成新業(yè)務(wù)的復(fù)用機制,以降低業(yè)務(wù)的二次開發(fā)難度,提高開發(fā)效率;面向混合服務(wù)的多任務(wù)并發(fā)執(zhí)行子系統(tǒng),分別連接服務(wù)生成、服務(wù)資源接入和服務(wù)管理三個子系統(tǒng),為混合服務(wù)提供穩(wěn)定可靠的業(yè)務(wù)編排及執(zhí)行環(huán)境;設(shè)有三個部件承載服務(wù)生成子系統(tǒng)生成的服務(wù)流程、執(zhí)行依據(jù)WS-BPEL標(biāo)準(zhǔn)編寫的業(yè)務(wù)流程、調(diào)用Web服務(wù)、發(fā)送和接受消息、進(jìn)行數(shù)據(jù)處理和故障恢復(fù)的動態(tài)流程執(zhí)行引擎,基于事件驅(qū)動的異步通信調(diào)用、處理復(fù)雜的網(wǎng)絡(luò)協(xié)議、增加系統(tǒng)對高吞吐量與低延遲電信服務(wù)的支持的低延遲事件服務(wù)引擎,以及采用包括分布式處理、智能路由與動態(tài)數(shù)據(jù)轉(zhuǎn)化的方法,利用不同協(xié)議支持異構(gòu)應(yīng)用及服務(wù)之間通信的服務(wù)總線,該服務(wù)總線在動態(tài)流程執(zhí)行引擎及低延遲事件引擎之間傳遞信息;該多任務(wù)并發(fā)執(zhí)行子系統(tǒng)還負(fù)責(zé)為生成的服務(wù)流程提供對應(yīng)的服務(wù)構(gòu)件塊SBB(Service Building Block),集成接入各種網(wǎng)絡(luò)資源,同時為服務(wù)管理子系統(tǒng)提供相應(yīng)的管理接口;服務(wù)資源接入子系統(tǒng),通過多種網(wǎng)關(guān)與各個網(wǎng)絡(luò)運營商的通信網(wǎng)絡(luò)相連接,將包括Parlay或ParlayX、SMS、MMS、LBS、GIS、SIP和E-Mail的各種協(xié)議能力統(tǒng)一封裝成Web服務(wù)供其他子系統(tǒng)調(diào)用,再通過相應(yīng)協(xié)議連接各種應(yīng)用系統(tǒng),通過兼容開放的標(biāo)準(zhǔn)協(xié)議接口,接入網(wǎng)絡(luò)運營商授權(quán)的各種現(xiàn)有通信業(yè)務(wù)和實現(xiàn)互通,并提供各種通信業(yè)務(wù)的協(xié)議支持;再通過與智能網(wǎng)相關(guān)設(shè)備的配合,實現(xiàn)與各種傳統(tǒng)話音增值業(yè)務(wù)和新業(yè)務(wù)的互通,并與多任務(wù)并發(fā)執(zhí)行子系統(tǒng)實現(xiàn)業(yè)務(wù)的數(shù)據(jù)交互;服務(wù)管理子系統(tǒng),分別連接服務(wù)生成、多任務(wù)并發(fā)執(zhí)行和服務(wù)資源接入三個子系統(tǒng),用于通過瀏覽器方式,提供各級管理維護(hù)人員對所述三個子系統(tǒng)實現(xiàn)協(xié)調(diào)管理,對該服務(wù)支撐系統(tǒng)執(zhí)行維護(hù)操作與提供公共服務(wù)支持,并對各系統(tǒng)業(yè)務(wù)進(jìn)行統(tǒng)一管理。
2.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于所述服務(wù)資源接入子系統(tǒng)至少設(shè)有下述 接入網(wǎng)關(guān)Par lay/Par IayX網(wǎng)關(guān),分別連接PSTN網(wǎng)、移動通信網(wǎng)2G、2.5G、3G和下一代網(wǎng)絡(luò)NGN, 用于接入相關(guān)網(wǎng)絡(luò)執(zhí)行網(wǎng)絡(luò)運營商授權(quán)業(yè)務(wù)的交互;短消息服務(wù)SMS網(wǎng)關(guān),用于連接移動通信網(wǎng)2G、2. 5G和3G,提供短消息類的授權(quán)業(yè)務(wù); 多媒體消息服務(wù)MMS網(wǎng)關(guān),用于連接移動通信網(wǎng)2G、2. 5G和3G,提供多媒體消息類的授 權(quán)業(yè)務(wù);LBS網(wǎng)關(guān),用于連接移動通信網(wǎng)2G、2. 5G和3G,提供移動終端的定位業(yè)務(wù);GIS網(wǎng)關(guān),用于連接Internet中的地理信息服務(wù),提供地理信息業(yè)務(wù);SIP網(wǎng)關(guān),用于連接3G移動通信網(wǎng)絡(luò)、NGN網(wǎng)絡(luò)、Wi-Fi網(wǎng)絡(luò)、Wi-MAX網(wǎng)絡(luò)和因特網(wǎng),提供基于IP的話務(wù)業(yè)務(wù);Mail網(wǎng)關(guān),用于連接Internet中的郵件服務(wù)器,與服務(wù)資源接入子系統(tǒng)的其它網(wǎng)關(guān)共 同向用戶提供mail提醒和轉(zhuǎn)發(fā)業(yè)務(wù);Web服務(wù)網(wǎng)關(guān),用于連接Internet,向用戶提供web查詢及推薦業(yè)務(wù);上述各個網(wǎng)關(guān)分別連接多任務(wù)并發(fā)執(zhí)行子系統(tǒng),向多任務(wù)并發(fā)執(zhí)行子系統(tǒng)發(fā)送業(yè)務(wù)請 求并接收其發(fā)來的業(yè)務(wù)指令。
3.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于所述服務(wù)管理子系統(tǒng)對該服務(wù)支撐系統(tǒng) 執(zhí)行維護(hù)操作與提供的公共服務(wù)支持的具體內(nèi)容包括配置管理,執(zhí)行包括配置計費數(shù)據(jù)和對配置數(shù)據(jù)的管理、系統(tǒng)與各個子系統(tǒng)的操作數(shù) 據(jù)自動備份的功能;故障管理,執(zhí)行包括對該服務(wù)支撐系統(tǒng)的運行狀態(tài)的監(jiān)視和故障監(jiān)測、故障告警、故障 定位、故障日志和故障分析的功能;安全管理,執(zhí)行接入認(rèn)證與鑒權(quán)操作,支持分級的管理用戶接入方式,以使不同權(quán)限的 管理用戶執(zhí)行相應(yīng)的不同操作,還支持多點操作和定時啟動命令;日志管理,執(zhí)行包括安全日志、日志管理的功能;該安全日志作為安全管理的重要證 據(jù),會將所有操作員的關(guān)鍵操作都自動地記錄于安全日志;計費和業(yè)務(wù)管理,能夠支持多種計費方式,以便對短信及數(shù)據(jù)業(yè)務(wù),支持按流量計費和 按內(nèi)容計費;對傳統(tǒng)話音服務(wù)及視頻服務(wù),支持按時間計費。
4.一種基于融合開放網(wǎng)絡(luò)的混合服務(wù)支撐系統(tǒng)的工作方法,其特征在于包括下列操 作步驟(1)服務(wù)生成子系統(tǒng)執(zhí)行服務(wù)的生成及驗證,即由服務(wù)開發(fā)者利用服務(wù)生成子系統(tǒng)完 成服務(wù)流程的開發(fā)過程;(2)多任務(wù)并發(fā)執(zhí)行子系統(tǒng)完成服務(wù)的部署及執(zhí)行,在服務(wù)執(zhí)行過程中,多任務(wù)并發(fā)執(zhí) 行子系統(tǒng)要調(diào)用服務(wù)資源接入子系統(tǒng)所提供的通信能力;(3)在該支撐系統(tǒng)的整個運行過程中,服務(wù)管理子系統(tǒng)負(fù)責(zé)對上述服務(wù)的生成、驗證、 部署和執(zhí)行的全部流程執(zhí)行協(xié)調(diào)管理,即對整個服務(wù)支撐系統(tǒng)的全部運行過程提供公共服 務(wù)支持,并統(tǒng)一協(xié)調(diào)管理各個子系統(tǒng)的操作。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于所述步驟(1)進(jìn)一步包括下述操作內(nèi)容(11)服務(wù)模板的抽取服務(wù)開發(fā)者利用服務(wù)生成子系統(tǒng),通過基于模板的機制對要重 復(fù)利用的BPEL片段或服務(wù)模板進(jìn)行有效封裝后,保存于模板庫;(12)服務(wù)模板的組裝服務(wù)開發(fā)者設(shè)計業(yè)務(wù)流程時,利用服務(wù)生成子系統(tǒng)提供的圖形 化開發(fā)環(huán)境,采用拖拽和點擊的圖形化方式將BPEL流程的開發(fā)與模板的拼裝融合在一起, 即將已生成的服務(wù)模板導(dǎo)入到當(dāng)前的業(yè)務(wù)流程編輯窗口中,供用戶按需使用;使服務(wù)開發(fā) 者能輕松復(fù)用已經(jīng)抽取出來的模板,減少二次開發(fā)時間,實現(xiàn)高效開發(fā);(13)服務(wù)模板的導(dǎo)出在完成基于模板的業(yè)務(wù)流程的編輯后,服務(wù)生成子系統(tǒng)要將此 時得到的基于擴(kuò)展標(biāo)簽完成的包含有模板的業(yè)務(wù)流程文件,導(dǎo)出為能夠在多任務(wù)并發(fā)執(zhí)行 子系統(tǒng)或任何BPEL執(zhí)行引擎上運行的標(biāo)準(zhǔn)BPEL文件,并刪除以前對BPEL片段增加的封 裝,完成到BPEL腳本的轉(zhuǎn)換;(14)服務(wù)的驗證在上述三個步驟的執(zhí)行過程中,服務(wù)生成子系統(tǒng)對其分別執(zhí)行包括BPEL語法驗證和模板語義驗證的支持,保證服務(wù)的正確性。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于所述步驟(11)中,為有效復(fù)用BPEL代碼, 先要完成對BPEL代碼段的描述或定義;當(dāng)服務(wù)開發(fā)者抽取其準(zhǔn)備封 裝的BPEL代碼段后,該 服務(wù)生成子系統(tǒng)自動將其封裝為統(tǒng)一形式的模板,通過系統(tǒng)解析,該模板詳細(xì)記錄該被抽 取的BPEL代碼段的接口信息;故服務(wù)生成子系統(tǒng)必須先提供一套模板封裝的模型定義,以 保存所需信息;該服務(wù)生成子系統(tǒng)采用自定義的擴(kuò)展標(biāo)簽完成對模板的定義,即通過定義模板的模型 來實現(xiàn)建模過程;模板給BPEL代碼段進(jìn)行接口定義,每個模板在給用戶使用時,必須聲明 其中下述各個接口的定義;〈template〉保存當(dāng)前模板的包括命名空間和模板名稱的自身信息; 〈inputVariable〉保存模板中作為輸入變量的包括輸入消息中的所有輸入?yún)?shù)和參數(shù) 結(jié)構(gòu),以及每個輸入?yún)?shù)用于哪個活動的輸入變量各種信息;〈outputVariable〉保存模板中作為輸出變量的包括輸出消息中的所有輸出參數(shù)和參 數(shù)結(jié)構(gòu),以及每個輸出參數(shù)用于哪個活動的輸出變量的各種信息; 〈element〉說明在變量中定義的具體參數(shù)的信息;〈condition〉保存模板中作為控制條件的包括該控制條件的內(nèi)容及其所在的控制活動 和抽取時用戶增加的注釋的相關(guān)信息;〈activity〉保存在抽取的BPEL代碼片段中包含的BPEL活動信息;<bpelCode>保存模板封裝的BPEL代碼片段;<wsdlCode>保存模板封裝的BPEL代碼片段相關(guān)聯(lián)的WSDL文件信息。
7.根據(jù)權(quán)利要求5所述的方法,其特征在于所述步驟(12)進(jìn)一步包含下述操作 內(nèi)容當(dāng)用戶打開圖形編輯窗口,準(zhǔn)備開發(fā)一個新的業(yè)務(wù)流程時,服務(wù)生成子系統(tǒng)在提供 BPEL代碼的基本編輯能力以外,還提供基于模板的流程編輯方式即自動讀入保存在模板 庫中的各個模板信息,將這些模板導(dǎo)入到當(dāng)前的業(yè)務(wù)流程編輯窗口中,以供用戶隨時選用; 用戶就能輕松地復(fù)用已經(jīng)抽取出來的模板,再為所選用的模板定義相關(guān)的變量信息和控制 條件,同時配合BPEL活動進(jìn)行模板的控制和補全,就能夠快速組合開發(fā)出用戶所需的新的 業(yè)務(wù)流程。
8.根據(jù)權(quán)利要求5所述的方法,其特征在于所述步驟(14)進(jìn)一步包含以下操作內(nèi)容在服務(wù)模板的抽取階段,對作為模板的BPEL文件和相關(guān)的WSDL文件進(jìn)行BPEL語法驗 證,保證服務(wù)模板的抽取是在正確的流程基礎(chǔ)上執(zhí)行的;在服務(wù)模板的組裝階段,對當(dāng)前編輯的服務(wù)流程進(jìn)行BPEL語法的驗證,同時在編輯過 程中進(jìn)行語義的驗證;在服務(wù)開發(fā)者對模板的輸入或輸出的變量進(jìn)行匹配時,提醒其完成 相應(yīng)操作;當(dāng)模板充當(dāng)流程側(cè)起點時,檢驗?zāi)0逯惺欠裼心軌騽?chuàng)建實例的receive或pick 活動。
9.根據(jù)權(quán)利要求4所述的方法,其特征在于所述步驟(2)進(jìn)一步包括下述操作內(nèi)容 (21)服務(wù)的部署將每個已經(jīng)完成的服務(wù)所涉及的服務(wù)流程與原子服務(wù)進(jìn)行組合,再打包部署到多任務(wù)并發(fā)執(zhí)行子系統(tǒng)中,以便在用戶的服務(wù)請求到達(dá)時,該支撐系統(tǒng)能夠根 據(jù)具體請求提供相應(yīng)的服務(wù);(22)服務(wù)的執(zhí)行,當(dāng)用戶的服務(wù)請求到來時,多任務(wù)并發(fā)執(zhí)行子系統(tǒng)根據(jù)服務(wù)請求的 具體內(nèi)容,為該請求分配匹配的已完成部署的服務(wù)流程,再由該服務(wù)流程調(diào)用相關(guān)原子服 務(wù)和對應(yīng)的外部通信資源,完成整個服務(wù)的執(zhí)行過程。
10.根據(jù)權(quán)利要求9所述的方法,其特征在于所述步驟(21)中,每個服務(wù)的部署進(jìn)一 步包括下述操作內(nèi)容(211)分析該服務(wù)的需求和實現(xiàn)該服務(wù)所需的各個原子服務(wù);再將實現(xiàn)該服務(wù)的各個 原子服務(wù)部署到低延遲事件服務(wù)引擎中;(212)為實現(xiàn)該服務(wù)的多個原子服務(wù)編輯一個服務(wù)描述文件,并將其打包成一個能夠 部署到低延遲事件服務(wù)引擎的服務(wù)單元SU (Service Unit);(213)為服務(wù)生成子系統(tǒng)生成的BPEL業(yè)務(wù)控制流程編寫一個能部署于動態(tài)流程執(zhí)行 引擎的部署描述文件,再將該部署描述文件、編輯好的BPEL控制流程和相應(yīng)的WSDL文件打 包成一個能部署于動態(tài)流程執(zhí)行引擎的服務(wù)單元;(214)為該服務(wù)編寫一個HTTP綁定組件描述文件,用于接收客戶端的客戶業(yè)務(wù)請求, 打包成為能夠部署于HTTP協(xié)議綁定組件的服務(wù)單元;(215)將上述三個步驟分別產(chǎn)生的三個服務(wù)單元打包成一個完整的服務(wù)集SA(Service Assembly),該服務(wù)集SA包就是整個服務(wù)的部署包;再將該部署包部署于多任務(wù)并發(fā)執(zhí)行 子系統(tǒng),然后,就能夠提供給用戶通過客戶端調(diào)用。
全文摘要
一種基于融合開放網(wǎng)絡(luò)的混合服務(wù)支撐系統(tǒng)和方法,系統(tǒng)設(shè)有基于模板復(fù)用的服務(wù)生成子系統(tǒng),面向混合服務(wù)的多任務(wù)并發(fā)執(zhí)行子系統(tǒng),服務(wù)資源接入子系統(tǒng)和服務(wù)管理子系統(tǒng),其以IP網(wǎng)融合PSTN,2G、2.5G和3G移動網(wǎng),以及Wi-Fi與Wi-MAX和分組數(shù)據(jù)網(wǎng)的各種異構(gòu)網(wǎng),支持在融合開放網(wǎng)絡(luò)環(huán)境中,提供基于模板復(fù)用的服務(wù)生成和多任務(wù)的并發(fā)執(zhí)行。本發(fā)明采用面向服務(wù)體系結(jié)構(gòu)SOA,基于模板復(fù)用的思想實現(xiàn)快速的服務(wù)生成,基于服務(wù)總線集成動態(tài)流程執(zhí)行引擎和低延遲事件服務(wù)引擎,提供融合網(wǎng)絡(luò)服務(wù)的運行環(huán)境,從而實現(xiàn)整合互聯(lián)網(wǎng)和電信領(lǐng)域的業(yè)務(wù)能力,達(dá)到提供靈活多樣的個性化服務(wù)和支持多任務(wù)并發(fā)執(zhí)行的目的。
文檔編號H04L12/24GK101826987SQ201010161518
公開日2010年9月8日 申請日期2010年4月27日 優(yōu)先權(quán)日2010年4月27日
發(fā)明者劉傳昌, 吳步丹, 商彥磊, 孫慧峰, 朱達(dá), 程渤, 章洋, 鄧敏, 陳俊亮, 顧萍麗 申請人:北京郵電大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
聂荣县| 泰和县| 安塞县| 鄢陵县| 宁晋县| 玉树县| 泽普县| 蒙阴县| 平塘县| 鲜城| 贵阳市| 龙游县| 四子王旗| 宕昌县| 内乡县| 清涧县| 高雄县| 吐鲁番市| 柳江县| 龙南县| 凤台县| 凉城县| 达尔| 黑河市| 黑水县| 马龙县| 白水县| 施秉县| 廉江市| 晴隆县| 观塘区| 黑河市| 怀集县| 安泽县| 淮北市| 凌源市| 汝南县| 沧州市| 理塘县| 八宿县| 黑龙江省|