国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

面向傳感網(wǎng)的服務(wù)構(gòu)建與并發(fā)控制

2011-02-10 05:44童恩棟牛溫佳譚紅艷趙志軍
關(guān)鍵詞:線程沖突規(guī)則

童恩棟,牛溫佳,譚紅艷,趙志軍,唐 暉

(中國科學(xué)院聲學(xué)研究所 北京 海淀區(qū) 100190)

現(xiàn)實(shí)世界中,網(wǎng)絡(luò)形式的系統(tǒng)隨處可見,如因特網(wǎng)、產(chǎn)品供應(yīng)鏈網(wǎng)絡(luò)、交通網(wǎng)絡(luò)及社會關(guān)系網(wǎng)絡(luò)等。近年來隨著復(fù)雜網(wǎng)絡(luò)研究熱潮的興起[1-2],學(xué)者們研究了各種復(fù)雜網(wǎng)絡(luò)的特性。如何在復(fù)雜網(wǎng)絡(luò)環(huán)境下,保證網(wǎng)絡(luò)的高效性和可靠性,已經(jīng)成為復(fù)雜網(wǎng)絡(luò)研究的重要課題。

無線傳感器網(wǎng)絡(luò)(WSN)指的是將紅外感應(yīng)器、全球定位系統(tǒng)等具有傳感、數(shù)據(jù)處理和無線通信能力的傳感器節(jié)點(diǎn)通過自組織方式形成的網(wǎng)絡(luò),用于協(xié)作地感知、采集和處理網(wǎng)絡(luò)覆蓋區(qū)域內(nèi)被測對象的信息,并通過無線多跳的通信方式實(shí)現(xiàn)與人類社會的交互。由于其傳感器節(jié)點(diǎn)數(shù)量巨大,且傳感器節(jié)點(diǎn)的移動、失效等特征會導(dǎo)致傳感器網(wǎng)絡(luò)的結(jié)構(gòu)不斷發(fā)生變化,因此,無線傳感器網(wǎng)絡(luò)是典型的復(fù)雜網(wǎng)絡(luò),無線傳感器網(wǎng)絡(luò)研究是復(fù)雜網(wǎng)絡(luò)研究的一個(gè)重要方面。

由于傳感器網(wǎng)絡(luò)強(qiáng)大的數(shù)據(jù)收集能力,極大地?cái)U(kuò)展了人們獲取信息的能力。因此被應(yīng)用在諸多領(lǐng)域,例如智能家居[1]、工業(yè)自動化[4]、精準(zhǔn)農(nóng)業(yè)[5]、智能監(jiān)控[6]等。傳感器網(wǎng)絡(luò)存在節(jié)點(diǎn)和網(wǎng)絡(luò)協(xié)議等異構(gòu)性,而Web服務(wù)由許多應(yīng)用程序接口(API)組成,隱藏了服務(wù)實(shí)現(xiàn)細(xì)節(jié),用戶只需通過網(wǎng)絡(luò)提交服務(wù)請求調(diào)用相應(yīng)API獲得服務(wù),保證了異構(gòu)應(yīng)用系統(tǒng)之間的互操作。因此,Web服務(wù)得到了廣泛應(yīng)用。而傳感器網(wǎng)絡(luò)的每個(gè)應(yīng)用就是一個(gè)Web服務(wù)。

Web服務(wù)流程包括服務(wù)的構(gòu)建、發(fā)布和請求執(zhí)行。服務(wù)由服務(wù)提供者提供,服務(wù)提供者將自己的服務(wù)接口信息在服務(wù)注冊中心注冊,以提供服務(wù)使用者發(fā)現(xiàn)和訪問服務(wù)。服務(wù)使用者根據(jù)自己的需求查詢服務(wù)注冊中心,獲得能夠滿足需求的服務(wù)描述,根據(jù)服務(wù)描述向服務(wù)提供者發(fā)送服務(wù)請求調(diào)用相應(yīng)API。其中,Web服務(wù)通過Web服務(wù)描述語言(web service description language,WSDL)描述Web服務(wù)和說明如何與Web服務(wù)進(jìn)行通信;通過統(tǒng)一描述、發(fā)現(xiàn)和集成協(xié)議(universal description discovery and integration,UDDI)向Web服務(wù)注冊中心定義API接口;通過基于簡單對象訪問協(xié)議(simple object access protocol,SOAP)在應(yīng)用程序間交換信息。

面向服務(wù)架構(gòu)(service-oriented architecture,SOA)將應(yīng)用程序的業(yè)務(wù)邏輯(business logic)模塊化為不同功能單元(稱為原子服務(wù)),而這些服務(wù)之間通過定義良好的接口和契約聯(lián)系起來。由于SOA服務(wù)易于構(gòu)建和共享原子服務(wù)的特點(diǎn),很多研究[7-8]嘗試將SOA應(yīng)用在傳感器網(wǎng)絡(luò)的服務(wù)構(gòu)建中。目前關(guān)于SOA的研究可以歸為智能規(guī)劃[9]和工作流[10]兩類。其中工作流技術(shù)由于其相對成熟被廣泛應(yīng)用[11]。二十世紀(jì)九十年代,由于普適計(jì)算[12]的提出,上下文感知工作流應(yīng)運(yùn)而生。上下文感知工作流是指工作流可以隨上下文的變化而動態(tài)地改變,以更準(zhǔn)確地完成任務(wù)。傳統(tǒng)的上下文感知工作流盡管實(shí)現(xiàn)了工作流的動態(tài)改變,但在原子服務(wù)的重用方面考慮不夠。在服務(wù)請求執(zhí)行方面,目前Web服務(wù)請求主要采用SOAP協(xié)議。SOAP請求消息一般搭載HTTP協(xié)議進(jìn)行傳輸,并發(fā)控制也是基于傳統(tǒng)的HTTP并發(fā)控制方法,而沒有考慮SOAP請求消息的具體內(nèi)容。

Web服務(wù)技術(shù)為Internet的服務(wù)管理提供了有效的技術(shù)支撐。然而,面向具體的傳感器網(wǎng)絡(luò)應(yīng)用,Web服務(wù)呈現(xiàn)出以下兩個(gè)新特點(diǎn):

1) 傳感器網(wǎng)絡(luò)的服務(wù)主要建立在各種傳感設(shè)備之上,通過與底層傳感設(shè)備的數(shù)據(jù)交互實(shí)現(xiàn)特定的功能。例如,一個(gè)溫度傳感器就可以構(gòu)建入侵檢測和空調(diào)控制等多個(gè)服務(wù)。因此,傳感器網(wǎng)絡(luò)傳感設(shè)備種類和數(shù)量的增加將導(dǎo)致傳感器網(wǎng)絡(luò)中Web服務(wù)規(guī)模呈指數(shù)級增長趨勢。

2) 由于底層傳感設(shè)備的高度互聯(lián),傳感器網(wǎng)絡(luò)的服務(wù)依賴關(guān)系也將更加緊密。在這種情況下,同一個(gè)服務(wù)資源往往可能要被多個(gè)服務(wù)調(diào)用和操作。例如,在提供游客實(shí)時(shí)視頻瀏覽的公園旅游場景下,攝像頭就屬于公共的服務(wù)資源。服務(wù)S1可以提供查詢攝像頭是否空閑的服務(wù),而服務(wù)S2也可以提供對該攝像頭的移動操作。

由于上述傳感器網(wǎng)絡(luò)Web服務(wù)的新特點(diǎn),需要設(shè)計(jì)面向傳感器網(wǎng)絡(luò)的服務(wù)管理方法,該服務(wù)管理方法應(yīng)該在服務(wù)構(gòu)建時(shí)重視傳感器網(wǎng)絡(luò)資源的重用,在服務(wù)請求執(zhí)行時(shí)考慮服務(wù)間的依賴關(guān)系。Web服務(wù)管理可以進(jìn)行改進(jìn)以實(shí)現(xiàn)資源重用的環(huán)節(jié)包括服務(wù)的構(gòu)建和服務(wù)的請求執(zhí)行。因此,本文提出了一種面向傳感器網(wǎng)絡(luò)的服務(wù)構(gòu)建與并發(fā)控制方法。該方法使用基于推理的上下文感知工作流用以構(gòu)建服務(wù)以及改進(jìn)的Web服務(wù)并發(fā)控制方法。具體方法如下:通過推理抽取出傳感器數(shù)據(jù)隱含的語義信息,進(jìn)而使用語義信息刻畫原子服務(wù)的輸入輸出,實(shí)現(xiàn)上層業(yè)務(wù)邏輯與底層傳感數(shù)據(jù)的松耦合,從而構(gòu)建更加動態(tài)的工作流。同時(shí),在服務(wù)的請求執(zhí)行方面,改進(jìn)了已有的Web服務(wù)并發(fā)控制方法,考慮傳感器網(wǎng)絡(luò)服務(wù)間的依賴關(guān)系。在收到服務(wù)請求信息后,首先解析得到SOAP請求消息的具體內(nèi)容,通過新增的并發(fā)控制模塊優(yōu)化服務(wù)請求消息的執(zhí)行,實(shí)現(xiàn)更有效的服務(wù)請求并發(fā)控制。

本文內(nèi)容組織如下:第1節(jié)介紹了相關(guān)工作,第2、3節(jié)分別詳細(xì)介紹了本文提出的面向傳感器網(wǎng)絡(luò)的服務(wù)構(gòu)建與并發(fā)控制,第4節(jié)通過實(shí)驗(yàn)與案例分析該服務(wù)構(gòu)建與并發(fā)控制在傳感器網(wǎng)絡(luò)中的優(yōu)勢。最后,第5節(jié)對全文做了一個(gè)簡單總結(jié)。

1 相關(guān)工作

本文提出的服務(wù)管理方法使用基于推理的上下文感知工作流構(gòu)建服務(wù)和改進(jìn)的并發(fā)控制方法優(yōu)化服務(wù)請求。

上下文感知工作流源于上世紀(jì)九十年代提出的普適計(jì)算[12],隨后上下文感知成為工作流領(lǐng)域的研究熱點(diǎn)[13-15]。文獻(xiàn)[16]提出了CAWE(context-aware workflow execution),使用抽象的工作流實(shí)現(xiàn)上下文感知。工作流由抽象的原子服務(wù)組成,每個(gè)抽象的原子服務(wù)對應(yīng)一組實(shí)現(xiàn)具體功能的原子服務(wù)實(shí)例。當(dāng)前上下文用來決定使用哪一個(gè)原子服務(wù)實(shí)例,以實(shí)現(xiàn)上下文感知的工作流。文獻(xiàn)[17]把上下文作為條件構(gòu)建服務(wù)子樹。當(dāng)上下文改變時(shí),工作流會通過選擇子樹實(shí)現(xiàn)工作流的動態(tài)重組,達(dá)到上下文感知的目的。以上工作雖然實(shí)現(xiàn)了工作流隨上下文改變而動態(tài)的改變,但因忽略了資源的重用,并不適用資源受限的傳感器網(wǎng)絡(luò)。

服務(wù)請求并發(fā)控制方面,基于SOAP的并發(fā)研究較少,但由于SOAP多由HTTP承載進(jìn)行傳輸,因此HTTP的并發(fā)控制對本文有重要參考價(jià)值。HTTP并發(fā)訪問控制多使用線程池技術(shù)[18]。文獻(xiàn)[19]提出一條SOAP消息攜帶多條服務(wù)請求,在解析出SOAP的服務(wù)請求消息后,通過應(yīng)用層增加的線程池處理SOAP消息攜帶的多條服務(wù)請求。因此,本文提出解析出SOAP的服務(wù)請求消息后,經(jīng)并發(fā)控制模塊優(yōu)化后由新增的線程池執(zhí)行服務(wù)請求。

2 基于推理的上下文感知工作流

在本文的服務(wù)管理方法中,采用工作流技術(shù)來構(gòu)建服務(wù)。二十世紀(jì)九十年代,普適計(jì)算[12]的提出,研究者們開始嘗試將上下文感知引入到工作流的管理中來,上下文感知工作流成為研究的熱點(diǎn)。

傳感器網(wǎng)絡(luò)能量、通信能力、計(jì)算存儲能力有限,且傳感器網(wǎng)絡(luò)服務(wù)高度依賴底層傳感器數(shù)據(jù),傳統(tǒng)的上下文感知工作流與傳感器數(shù)據(jù)緊耦合,因此存在大量冗余的原子服務(wù),造成傳感器網(wǎng)絡(luò)的資源浪費(fèi)。以溫度控制服務(wù)(獲取房間內(nèi)的溫度值并判斷是否需要打開/關(guān)閉空調(diào))為例。在不同的環(huán)境下,溫度判斷的條件也各不相同(T>58 ℃,T>100 ℃等),因此需要相應(yīng)地構(gòu)建多個(gè)原子服務(wù),但它們其實(shí)包含同一語義信息,即當(dāng)前溫度高或低。

本文引入基于規(guī)則的推理技術(shù),抽取出傳感器數(shù)據(jù)中的語義信息,進(jìn)而服務(wù)提供商設(shè)計(jì)新的原子服務(wù)替代已有原子服務(wù),其中新的原子服務(wù)的輸入輸出由推理出的語義信息進(jìn)行刻畫,實(shí)現(xiàn)上層業(yè)務(wù)邏輯與底層傳感數(shù)據(jù)的松耦合,從而構(gòu)建工作流時(shí)多個(gè)工作流可以共用相同的原子服務(wù),最終提高工作流的動態(tài)性和資源的重用性。還是以溫度控制服務(wù)為例,構(gòu)建新的原子服務(wù)(判斷當(dāng)前溫度高或低)并使用語義信息(溫度高或低)作為輸入來替代已有的原子服務(wù)(判斷溫度值是否大于58 ℃或100 ℃等)。這樣,盡管所處環(huán)境不同,溫度控制服務(wù)可以共用新建的原子服務(wù)。圖1所示為基于推理的上下文感知工作流模型。

圖1 基于推理的上下文感知工作流模型

圖2 規(guī)則引擎工作流程

其中,規(guī)則引擎是該模型的核心,通過預(yù)先定義的規(guī)則抽取出當(dāng)前傳感數(shù)據(jù)的語義信息;服務(wù)提供商建立原子服務(wù),并使用抽取的語義信息對原子服務(wù)的輸入輸出進(jìn)行刻畫,實(shí)現(xiàn)上層業(yè)務(wù)邏輯和底層傳感數(shù)據(jù)的松耦合,建立的原子服務(wù)存儲在原子服務(wù)存儲模塊中;工作流引擎用于工作流的建立,監(jiān)控和執(zhí)行。

規(guī)則引擎的工作包含規(guī)則匹配、規(guī)則選擇和規(guī)則執(zhí)行3個(gè)階段。規(guī)則匹配過程中可能會存在多條規(guī)則被同時(shí)匹配成功,因此需要規(guī)則沖突算法選擇適當(dāng)?shù)囊?guī)則來執(zhí)行。圖2所示為規(guī)則引擎的工作流程。

其中,規(guī)則匹配階段采用RETE算法進(jìn)行高效實(shí)現(xiàn),規(guī)則沖突解決(即規(guī)則選擇)階段采用本文提出的基于上下文感知優(yōu)先級的沖突消除算法實(shí)現(xiàn)。

RETE算法是一個(gè)用來實(shí)現(xiàn)產(chǎn)生式規(guī)則系統(tǒng)的高效匹配算法[20]。該算法的核心思想是一種根據(jù)規(guī)則的條件部分生成RETE網(wǎng)絡(luò),數(shù)據(jù)由根節(jié)點(diǎn)進(jìn)入網(wǎng)絡(luò)進(jìn)行匹配,過程中網(wǎng)絡(luò)會儲存匹配結(jié)果,達(dá)到顯著降低計(jì)算量的效果[21]。

規(guī)則沖突的解決辦法多是采用對沖突中的規(guī)則分配不同優(yōu)先級的方式。傳統(tǒng)的優(yōu)先級取值是唯一的,而在上下文感知環(huán)境中,當(dāng)前場景下某一規(guī)則可能有一優(yōu)先級,而在另一場景下,該規(guī)則可能有另一不同的優(yōu)先級取值。

本文提出的沖突解決算法基于上下文感知的優(yōu)先級,同一規(guī)則在不同的場景下分配不同的優(yōu)先級,從而可提高規(guī)則沖突解決方法的準(zhǔn)確性。下面所示為本文的溫度控制服務(wù)引入上下文感知優(yōu)先級規(guī)則實(shí)例如下。其中有3個(gè)優(yōu)先級,括號內(nèi)表示該優(yōu)先級適用的上下文,包括默認(rèn)的優(yōu)先級5,室內(nèi)的優(yōu)先級10和室外的優(yōu)先級15。進(jìn)行規(guī)則選擇時(shí),該上下文會與當(dāng)前上下文進(jìn)行匹配,若相同則為該規(guī)則分配該上下文對應(yīng)的優(yōu)先級。為沖突中的規(guī)則分配了不同的優(yōu)先級后,沖突解決算法選擇執(zhí)行擁有最高優(yōu)先級的規(guī)則。

圖3 搭載在HTTP上的Web服務(wù)請求

3 服務(wù)請求并發(fā)控制

目前,Web服務(wù)請求主要采用IBM、M icrosoft、UserLand和DevelopMentor在1998年共同提出,并于2000年提交給萬維網(wǎng)聯(lián)盟(W 3C)的SOAP[22]協(xié)議,當(dāng)前的最新版本為SOAP1.2。SOAP是建立在XML語言基礎(chǔ)上的一個(gè)輕量的協(xié)議,用以規(guī)范在一個(gè)分布式環(huán)境下進(jìn)行結(jié)構(gòu)化的信息交換。一條SOAP消息就是一個(gè)普通的XML文檔,包含Envelope、Header、Body和Fault共4個(gè)基本元素,通過HTTP進(jìn)行承載,如圖3所示。

對于搭載在HTTP上的Web服務(wù)請求,相應(yīng)的并發(fā)控制機(jī)制如圖4所示。

圖4 傳統(tǒng)Web服務(wù)并發(fā)控制流程

搭載Web服務(wù)請求的HTTP消息到達(dá)Web服務(wù)器后,線程池分配線程用以處理HTTP消息。首先經(jīng)過HTTP解析得到搭載的SOAP消息,進(jìn)一步進(jìn)行XML解析,獲得SOAP Body包含的服務(wù)請求內(nèi)容,由相應(yīng)的Web服務(wù)進(jìn)行處理,經(jīng)過與上述過程相反的過程對響應(yīng)信息進(jìn)行封裝并返回給服務(wù)請求端。最后,線程釋放該Web服務(wù)請求實(shí)例并放回線程池以循環(huán)執(zhí)行Web服務(wù)請求。以上Web服務(wù)并發(fā)控制的核心在于:線程池維護(hù)確定數(shù)量的等待線程,每當(dāng)有Web服務(wù)請求到達(dá),線程池就分配一個(gè)線程為請求服務(wù)。為了運(yùn)行這些線程,處理器為每個(gè)獨(dú)立線程安排一些處理器時(shí)間,處理器以順序輪換方式向線程提供時(shí)間片,實(shí)現(xiàn)多線程的并發(fā)處理。線程池的優(yōu)勢在于服務(wù)器運(yùn)行之初一次性創(chuàng)建多個(gè)線程并循環(huán)使用,將線程創(chuàng)建開銷分?jǐn)偟蕉鄠€(gè)任務(wù)上,可避免頻繁創(chuàng)建、銷毀線程帶來的巨大資源開銷,以及創(chuàng)建過多的線程耗盡系統(tǒng)資源。

由圖4可知,Web服務(wù)器在收到服務(wù)請求時(shí)即分配線程進(jìn)行響應(yīng),而具體的服務(wù)請求內(nèi)容是在經(jīng)過HTTP及XML解析后獲得。傳統(tǒng)的Web服務(wù)并發(fā)控制方法缺陷在于:線程的分配沒有考慮HTTP消息中封裝的服務(wù)請求內(nèi)容,多個(gè)HTTP請求被分配獨(dú)立的線程單獨(dú)執(zhí)行。如果當(dāng)前的多個(gè)HTTP請求封裝相同的服務(wù)請求,以及服務(wù)請求之間有沖突或有執(zhí)行優(yōu)先級之分,有可能會造成線程浪費(fèi)、資源沖突和錯(cuò)誤的發(fā)生。以提供游客實(shí)時(shí)視頻瀏覽的公園旅游場景為例,用戶A用請求服務(wù)S1詢問攝像頭是否空閑,而用戶B用請求服務(wù)S2移動攝像頭查看景點(diǎn)。當(dāng)用戶A與用戶B的請求同時(shí)到達(dá)時(shí),目前的Web服務(wù)并發(fā)控制方法是分配兩個(gè)獨(dú)立線程并隨機(jī)執(zhí)行Web服務(wù)響應(yīng)。但是,這兩個(gè)服務(wù)請求是存在優(yōu)先級之分的,用戶B的請求應(yīng)該優(yōu)先于用戶A的請求執(zhí)行,以避免用戶A查詢到攝像頭空閑而請求操作時(shí)攝像頭已被占用的矛盾。

在傳統(tǒng)的Web服務(wù)并發(fā)控制基礎(chǔ)上,本文將在解析出SOAP Body的內(nèi)容后,設(shè)計(jì)新增的相應(yīng)的并發(fā)控制模型實(shí)現(xiàn)Web服務(wù)并發(fā)控制方法。

本文首先從SOAP協(xié)議入手,在SOAP Body中定義服務(wù)設(shè)備資源統(tǒng)一描述框架,從而為下一步的優(yōu)先級計(jì)算和并發(fā)控制奠定基礎(chǔ)。如表1所示。

采用上述8個(gè)屬性對服務(wù)設(shè)備資源進(jìn)行描述。其中,ResourceURL、OperationName和OperationInput、OperationOutput取自SOAP本身,另外定義了ResourceID、ResourceType、ResourceList和OperationType等4個(gè)屬性。傳感器網(wǎng)絡(luò)Web服務(wù)高度依賴底層傳感器設(shè)備,因此需要唯一的ResourceID來標(biāo)識服務(wù)設(shè)備資源,而傳感設(shè)備的高度互聯(lián),同一傳感器可能被多個(gè)Web服務(wù)調(diào)用,不同傳感器設(shè)備也可以協(xié)同工作實(shí)現(xiàn)同一Web服務(wù)。本文采用ResourceList表示W(wǎng)eb服務(wù)所關(guān)聯(lián)的多個(gè)服務(wù)設(shè)備資源,是一個(gè)由各服務(wù)設(shè)備資源ResourceID組成的集合。ResourceType指明服務(wù)設(shè)備資源的類型,如攝像頭、加濕器等,顯然,一個(gè)ResourceType可以對應(yīng)多個(gè)ResourceID。OperationType指明可以對服務(wù)設(shè)備資源進(jìn)行的操作類型,如查詢、操作。OperationInput和OperationOutput分別是服務(wù)設(shè)備資源操作的輸入和輸出,從服務(wù)I/O中獲取。例如,查詢攝像頭是否空閑的服務(wù)請求可以按照服務(wù)設(shè)備資源屬性定義統(tǒng)一刻畫。由于SOAP是基于XML描述的,因此只要增加解析處理,自定義的設(shè)備屬性標(biāo)簽?ResourceList?和 ?Operation?等 可 以 很 容 易 地 嵌 入SOAP。圖5所示為使用服務(wù)設(shè)備資源統(tǒng)一描述框架描述的SOAP請求消息。

表1 服務(wù)設(shè)備資源屬性定義

使用服務(wù)設(shè)備資源統(tǒng)一描述框架對SOAP請求消息進(jìn)行擴(kuò)展,可增加服務(wù)設(shè)備資源信息。在解析出SOAP Body中的服務(wù)請求內(nèi)容后,消息即被送到并發(fā)控制模塊,此時(shí)先前的線程釋放Web服務(wù)請求實(shí)例并放回第一線程池。通過新增并發(fā)控制模塊,本文提出改進(jìn)的并發(fā)控制模型,如圖6所示。與傳統(tǒng)的Web服務(wù)并發(fā)控制流程不同,該并發(fā)控制維護(hù)兩個(gè)線程池。并發(fā)控制模塊接收到多線程送來的Web服務(wù)請求消息,根據(jù)一定的策略進(jìn)行請求服務(wù)設(shè)備資源的重復(fù)和沖突檢測,優(yōu)化服務(wù)請求內(nèi)容及其執(zhí)行順序,由第二線程池分配線程通過執(zhí)行模塊完成相應(yīng)的服務(wù)請求。通過并發(fā)控制模塊,可避免線程浪費(fèi)、資源沖突和錯(cuò)誤的發(fā)生。并發(fā)控制模塊內(nèi)部組成如圖7所示。

圖5 SOAP請求消息格式

圖6 服務(wù)并發(fā)控制原理

圖7 并發(fā)控制模塊結(jié)構(gòu)

并發(fā)控制模塊主要包括重復(fù)和沖突檢測、優(yōu)先級設(shè)定和執(zhí)行模塊。消息接收模塊負(fù)責(zé)接收解析的SOAP服務(wù)請求消息,并將請求消息送到預(yù)處理模塊。預(yù)處理模塊用于將解析得到的信息進(jìn)行數(shù)學(xué)表示。首先,利用重復(fù)檢測方法進(jìn)行重復(fù)檢測,使用過濾器過濾掉重復(fù)的服務(wù)請求,并送到?jīng)_突檢測模塊進(jìn)行服務(wù)請求沖突檢測。若存在沖突,需要對沖突的服務(wù)請求賦予不同的優(yōu)先級,優(yōu)先級的設(shè)定依靠預(yù)先定義的規(guī)則及當(dāng)前的場景。請求消息預(yù)處理模塊對標(biāo)記優(yōu)先級的請求進(jìn)行排序,分配線程,并進(jìn)一步使用尋址模塊通過消息發(fā)送模塊執(zhí)行服務(wù)請求。

3.1 重復(fù)和沖突檢測

Web服務(wù)并發(fā)控制的出發(fā)點(diǎn)是避免請求的重復(fù)與沖突。若服務(wù)請求存在重復(fù),則可以使用相同的線程完成相應(yīng)的請求內(nèi)容;若服務(wù)請求存在沖突,則需要對沖突的服務(wù)請求線程賦予不同的優(yōu)先級。以下首先將重復(fù)和沖突檢測中用到的服務(wù)設(shè)備資源進(jìn)行相應(yīng)的數(shù)學(xué)定義和描述,接著給出具體的檢測計(jì)算方法。

服務(wù)器收到SOAP請求后將通過解析獲得各個(gè)具體屬性的取值。S服務(wù)的設(shè)備資源列表ResourceList可定義為RL(S)={RI1,RI2,,RIN},其中RIi為設(shè)備編號,且屬于自然數(shù)集合N。設(shè)備資源RI的設(shè)備操作類型可定義為OT(RI)={OT1,OT2,,OTp},其中OT1定義的查詢操作為客戶端發(fā)送請求并需要等待服務(wù)器端的響應(yīng);OT2定義的操作為客戶端發(fā)送請求后,除了確認(rèn)信息外,不需要服務(wù)器端返回其他信息。由于目前該文提出的方法支持的僅有查詢(query)和操作(do)兩種操作類型,因此OT1=‘query’,OT2=‘do’,p=1,2。服務(wù)S的訪問地址URL可定義為URL(S)=L,其中L為字符串變量。同理,服務(wù)設(shè)備資源RI的操作名稱OperationName可定義為ON(RI)=p,其中p為字符串變量,且p=1,2。服務(wù)設(shè)備資源操作的輸入OperationInput可定義為OI(RI) = {OI1,OI2,,OIM},其中OIi為輸入變量。

服務(wù)請求的重復(fù)檢測需要通過比較兩個(gè)服務(wù)請求的訪問地址URL、OperationName和OperationInput來判斷,若全部相同則表示兩個(gè)服務(wù)請求是重復(fù)的;若至少有一項(xiàng)不同,則兩個(gè)服務(wù)請求是不同的。假設(shè)有兩個(gè)服務(wù)請求R1和R2同時(shí)到達(dá),通過解析可以得到R1的服務(wù)訪問地址為R1?URL(S1),服務(wù)設(shè)備資源的操作名稱OperationName為R1?ON(RI1),服務(wù)設(shè)備資源的操作輸入OperationInput為R1?OI(RI1);同樣R2的服務(wù)訪問地址為R2?URL(S2),OperationName為R2?ON(RI2),OperationInput為R2?OI(RI2)。則判斷服務(wù)請求重復(fù)的條件表達(dá)式如下:

表達(dá)式為真則說明服務(wù)請求重復(fù)。

服務(wù)請求的沖突檢測不僅涉及兩個(gè)服務(wù)請求關(guān)聯(lián)的設(shè)備資源是否有重復(fù),而且依賴服務(wù)請求對設(shè)備資源的操作類型。假設(shè)有兩個(gè)服務(wù)請求R1、R2,關(guān)聯(lián)的設(shè)備資源列表分別表示為R1?RL(S1)、R2?RL(S2),首先服務(wù)請求存在沖突的前提條件為RL(S)=R1?RL(S1)∩ R2?RL (S2)≠?,即兩個(gè)服務(wù)請求R1,R2關(guān)聯(lián)有相同的服務(wù)設(shè)備資源,因此存在沖突的可能。其次,服務(wù)請求R1、R2對其關(guān)聯(lián)的相同服務(wù)設(shè)備資源的不同操作類型決定了沖突是否存在。判斷依據(jù)如下:若R1、R2對其關(guān)聯(lián)的某一相同設(shè)備資源操作類型同為查詢,則不存在沖突;若R1(R2)為查詢、R2(R1)為操作或R1、R2同為操作則存在沖突。判斷條件如下:

其中,RIi∈RL(S)。

3.2 優(yōu)先級計(jì)算和服務(wù)執(zhí)行

對于檢測到服務(wù)請求沖突的情況,需要進(jìn)行優(yōu)先級計(jì)算,并對沖突的服務(wù)請求賦予不同的優(yōu)先級。與其他優(yōu)先級計(jì)算方法不同的是,本文方法中優(yōu)先級計(jì)算由靜態(tài)優(yōu)先級計(jì)算和動態(tài)優(yōu)先級計(jì)算兩部分組成,其中靜態(tài)優(yōu)先級的計(jì)算又綜合考慮了規(guī)則和場景兩個(gè)因素,從而實(shí)現(xiàn)了上下文感知和動靜結(jié)合兩大特色功能。

靜態(tài)優(yōu)先級是指優(yōu)先級的計(jì)算值將不隨時(shí)間變化而改變,主要考慮利用預(yù)先定義的規(guī)則和場景計(jì)算服務(wù)請求的優(yōu)先級。采用ECA規(guī)則(事件-條件-動作)預(yù)先指定部分可能沖突的優(yōu)先級,其中E刻畫觸發(fā)該規(guī)則的沖突事件,C刻畫規(guī)則條件中包含的服務(wù)請求,A設(shè)定沖突服務(wù)請求的優(yōu)先級。當(dāng)有兩個(gè)服務(wù)請求R1、R2到達(dá),且R1、R2均對RI1表示的攝像頭進(jìn)行了操作,由沖突檢測可知服務(wù)請求R1與R2沖突,由此觸發(fā)規(guī)則r1。規(guī)則r1的條件部分表示當(dāng)R1的操作名稱為“turn to east”,而R2的操作名稱為“turn to south”,且由當(dāng)前場景獲取模塊得知當(dāng)前攝像頭的方位為north時(shí),出于減少攝像頭操作考慮,在規(guī)則r1的動作部分,設(shè)定R1的優(yōu)先級為10,高于R2的優(yōu)先級,其中優(yōu)先級值屬于自然數(shù)集合N。事實(shí)上,在Web服務(wù)中,某個(gè)服務(wù)請求可能在一個(gè)場景下優(yōu)先級較低,但在另一場景下優(yōu)先級最高。因此,在規(guī)則定義中引入當(dāng)前場景使得優(yōu)先級的設(shè)定更加準(zhǔn)確。

前面提到,目前該文提出的方法支持的服務(wù)設(shè)備資源操作類型僅有查詢(query)和操作(do)兩種,沖突檢測依據(jù)的也是不同服務(wù)請求對服務(wù)設(shè)備資源的操作類型。假設(shè)有兩個(gè)服務(wù)請求R1和R2,對于服務(wù)請求沖突的一種情況,即對服務(wù)設(shè)備資源的操作類型R1(R2)為查詢、R2(R1)為操作,表示為R1?OT (RI)= ={OT1},且R2?OT (RI)= ={OT2},利用規(guī)則設(shè)定操作的優(yōu)先級永遠(yuǎn)高于查詢的優(yōu)先級,即do?Priority >query?Priority;對于服務(wù)請求沖突的另一種情況,即對服務(wù)設(shè)備資源的操作類型R1和R2均為操作,表示為R1?OT (RI)= =R2?OT (RI)= ={OT2}。優(yōu)先級的計(jì)算僅使用規(guī)則是不夠的,還需要綜合靜態(tài)優(yōu)先級和動態(tài)優(yōu)先級。

從規(guī)則中,可以直接得到預(yù)先設(shè)定的優(yōu)先級取值,表示為X。由于ECA規(guī)則和場景是預(yù)先定義的,因此無法考慮服務(wù)執(zhí)行時(shí)間對靜態(tài)優(yōu)先級的影響。若有一組沖突的服務(wù)請求R1,R2,,RN,按執(zhí)行時(shí)間由長到短排序,可以得到一組序列RT={1,2,,N}。假設(shè)沖突服務(wù)請求RS(1≤S≤N)在RT序列中的序號為Y(1≤Y≤N),則靜態(tài)優(yōu)先級計(jì)算公式可表示為Pstatic=pX+qY,(p+q=1)。其中,p表示規(guī)則預(yù)定義優(yōu)先級數(shù)值的權(quán)重,而q表示執(zhí)行時(shí)間對靜態(tài)優(yōu)先級的計(jì)算權(quán)重。

動態(tài)優(yōu)先級是指優(yōu)先級隨服務(wù)請求在隊(duì)列中的等待時(shí)間而動態(tài)變化, 即隨等待時(shí)間增加優(yōu)先級逐漸提升。系統(tǒng)通過不斷更新服務(wù)的等待時(shí)間,按從小到大順序產(chǎn)生一組等待時(shí)間序列RW={1,2,,M}。與執(zhí)行時(shí)間序列不同的是,RW是每隔固定間隔更新的。假設(shè)沖突服務(wù)請求RS(1≤S≤M)在RW序列中的序號為Z(1≤Z≤M),則動態(tài)優(yōu)先級計(jì)算公式為Pdynamic=Z。

綜合考慮靜態(tài)和動態(tài)優(yōu)先級,得到統(tǒng)一的優(yōu)先級計(jì)算公式:

式中,α和β分別為靜態(tài)和動態(tài)優(yōu)先級對整個(gè)優(yōu)先級計(jì)算的權(quán)重,α+β=1。

服務(wù)請求存在重復(fù)和沖突兩種情況。并發(fā)控制模型需要對這兩種情況設(shè)定不同的策略。對于服務(wù)請求重復(fù)的情況,可以通過共用線程來減少不必要的線程使用,首先通過過濾器將重復(fù)的服務(wù)請求轉(zhuǎn)化為一個(gè)服務(wù)請求,然后第二線程池分配線程,執(zhí)行完畢后將響應(yīng)結(jié)果返回給重復(fù)服務(wù)請求組內(nèi)的每一個(gè)源地址。對于服務(wù)請求沖突的情況,按照本文提出的優(yōu)先級計(jì)算公式,對沖突的服務(wù)請求賦予不同優(yōu)先級,按優(yōu)先級先后順序執(zhí)行??傊l(fā)控制模塊收到一系列服務(wù)請求后首先會對其進(jìn)行排序。排序整體按照先來先服務(wù)的原則,但對于存在沖突的服務(wù)請求按照優(yōu)先級高低順序排序。之后,服務(wù)請求被依次放入執(zhí)行隊(duì)列,通過尋址模塊由第二線程池分配線程執(zhí)行服務(wù)請求。

圖8 基于推理上下文感知工作流實(shí)現(xiàn)資源重用

4 實(shí)驗(yàn)與案例分析

本文按服務(wù)構(gòu)建與并發(fā)控制兩部分對提出的服務(wù)管理方法進(jìn)行實(shí)驗(yàn)與案例分析。通過提供一個(gè)入侵檢測的應(yīng)用場景,首先在服務(wù)構(gòu)建實(shí)驗(yàn)與案例分析部分,分析規(guī)則引擎匹配性能、上下文感知優(yōu)先級在規(guī)則選擇上的應(yīng)用,以及基于推理的上下文感知工作流如何實(shí)現(xiàn)傳感器網(wǎng)絡(luò)的資源重用。其次在并發(fā)控制案例分析部分,分析改進(jìn)的并發(fā)控制方法在減少不必要的服務(wù)執(zhí)行次數(shù)及沖突請求消除上,相對傳統(tǒng)并發(fā)控制方法在資源受限的傳感器網(wǎng)絡(luò)中應(yīng)用的優(yōu)勢。

4.1 服務(wù)構(gòu)建實(shí)驗(yàn)與案例分析

首先,給出一個(gè)應(yīng)用場景。一個(gè)家庭購買了多個(gè)傳感器用于構(gòu)建入侵檢測服務(wù),包括紅外傳感器和聲音傳感器,如圖8所示。傳統(tǒng)的工作流模型中,家庭男主人使用紅外和聲音傳感器構(gòu)建了工作流H,而女主人使用聲音傳感器構(gòu)建了工作流W。其實(shí),工作流H和工作流W含有相同的語義信息,即入侵是否發(fā)生。因此,面向傳感器網(wǎng)絡(luò)的服務(wù)管理模型引入推理抽取出該語義信息,建立新的原子服務(wù)(入侵探測)替代已有的原子服務(wù)(紅外探測和聲音探測)。盡管男女主人使用不同的傳感器組合,構(gòu)建工作流時(shí)可以共用同一原子服務(wù),可實(shí)現(xiàn)原子服務(wù)的重用,構(gòu)建的工作流即工作流R。

為了獲取傳感數(shù)據(jù)中的語義信息,首先需要為男女主人建立一些規(guī)則文件。其中,男主人對應(yīng)規(guī)則H,女主人對應(yīng)規(guī)則W。假設(shè)當(dāng)前傳感數(shù)據(jù)為:紅外探測到周圍有人,并且聲音傳感器數(shù)值為750。那么,規(guī)則W將被選擇執(zhí)行,輸出存在入侵檢測。如考慮春節(jié)場景,人們會燃放鞭炮,產(chǎn)生巨大聲響,導(dǎo)致入侵檢測系統(tǒng)誤報(bào)警。因此,領(lǐng)域?qū)<医⒁?guī)則E來解決該問題。規(guī)則E具有較低的默認(rèn)優(yōu)先級5和上下文感知優(yōu)先級10。同樣在春節(jié)場景下,當(dāng)傳感器數(shù)據(jù)為:紅外探測到周圍有人,并且聲音傳感器數(shù)值為850,規(guī)則H、規(guī)則W和規(guī)則E同時(shí)匹配,沖突產(chǎn)生,但規(guī)則H的優(yōu)先級為6,規(guī)則W的優(yōu)先級為7,而規(guī)則E的上下文感知優(yōu)先級為10,由規(guī)則沖突消除算法可知,規(guī)則E會被選擇執(zhí)行,即入侵檢測并沒有發(fā)生,由此避免了誤報(bào)警的發(fā)生。入侵檢測服務(wù)規(guī)則文件如下:

表2 規(guī)則列表

表3 傳感器數(shù)據(jù)列表

基于推理上下文感知工作流較傳統(tǒng)工作流增加了規(guī)則推理部分,因此增加了額外的計(jì)算時(shí)間。本文擴(kuò)展了應(yīng)用場景,增加了規(guī)則S和規(guī)則E1、規(guī)則E2,如表2所示,其中規(guī)則E1、規(guī)則E2為領(lǐng)域?qū)<覟榻鉀Q潛在的沖突而建立的規(guī)則,本文假定領(lǐng)域?qū)<叶x的規(guī)則為最優(yōu)規(guī)則。與傳感器數(shù)據(jù)數(shù)值的關(guān)系如圖9所示。增加的規(guī)則推理部分在規(guī)則匹配過程的響應(yīng)時(shí)間,實(shí)驗(yàn)結(jié)果顯示,規(guī)則匹配所增加的額外計(jì)算時(shí)間是可以接受的。

圖9 規(guī)則匹配性能分析

為了驗(yàn)證基于上下文感知優(yōu)先級在規(guī)則沖突解決中較高的準(zhǔn)確性,選擇表3所示的一組傳感器數(shù)據(jù)進(jìn)行規(guī)則匹配和沖突規(guī)則選擇,結(jié)果如表4所示。可見基于上下文感知的優(yōu)先級較傳統(tǒng)優(yōu)先級在沖突規(guī)則的選擇上具有更高的準(zhǔn)確率。

表4 基于上下文感知和傳統(tǒng)優(yōu)先級準(zhǔn)確性比較

4.2 并發(fā)控制案例分析

在服務(wù)請求方面,本文的并發(fā)控制方法的出發(fā)點(diǎn)是優(yōu)化服務(wù)請求,避免重復(fù)請求相同的服務(wù)和消除服務(wù)請求的沖突。同樣以入侵檢測服務(wù)為例,房間有成員A、B、C、D,利用攝像頭camera_1、camera_2、camera_3,以及紅外傳感器和聲音傳感器組成的入侵檢測服務(wù)(工作流)。入侵檢測服務(wù)提供用戶查詢當(dāng)前是否存在入侵,以及提供用戶使用攝像頭進(jìn)行視頻監(jiān)控。

表5 入侵檢測服務(wù)請求列表

假設(shè)有表5所示服務(wù)請求同時(shí)到達(dá),傳統(tǒng)的Web服務(wù)并發(fā)會分別執(zhí)行表中的服務(wù)請求。但本文提出的Web服務(wù)請求并發(fā)控制方法會在解析出具體服務(wù)請求內(nèi)容后,執(zhí)行重復(fù)和沖突檢測,并按照既定策略執(zhí)行服務(wù)。

由于家庭成員A、B請求同一房間的入侵檢測服務(wù),則S1=S2,R1?URL(S1)= R2?URL(S2)。另外,R1、R2調(diào)用入侵檢測服務(wù)的同一API,即R1.ON(S1)=R2?ON(S2)=“Status query”, R1?OI(S1)=R2?OI(S2)=“intrusion”。由服務(wù)請求重復(fù)判斷條件可得R1、R2為重復(fù)的服務(wù)請求。

對于服務(wù)請求R3、R4來說,R3?RLcamera_3},R3?RL (S3)∩ R4?RL (S4)≠?,滿足服務(wù)請求沖突的前提條件,即R3、R4服務(wù)請求關(guān)聯(lián)了相同的設(shè)備資源(camera_1)。此外,R3?OT (camera_1)=“do”, R4?OT(camera_1 , camera_2 , camera_3)=“query”,由服務(wù)請求沖突判斷條件可得服務(wù)請求R3、R4存在沖突。

并發(fā)控制流程為:1) 重復(fù)檢測模塊檢測到R1、R2為重復(fù)的服務(wù)請求后,會合并服務(wù)請求,入侵檢測服務(wù)執(zhí)行結(jié)束后向家庭成員A、B返回執(zhí)行結(jié)果,避免了不必要的服務(wù)執(zhí)行。2) 沖突檢測模塊檢測到R3、R4為沖突的服務(wù)請求后,會進(jìn)行優(yōu)先級計(jì)算,R3?OT(camera_1)=“do”,R4?OT(camera_1,camera_2,camera_3)=“query”。因此,R3具有更高的優(yōu)先級,會優(yōu)先執(zhí)行,避免了錯(cuò)誤的發(fā)生。入侵檢測服務(wù)中改進(jìn)的并發(fā)控制與傳統(tǒng)的并發(fā)控制的比較如表6所示。可見,改進(jìn)后的并發(fā)控制方法減少了不必要的服務(wù)執(zhí)行次數(shù),并避免了服務(wù)執(zhí)行中的沖突發(fā)生,更加適應(yīng)資源受限的傳感器網(wǎng)絡(luò)的服務(wù)執(zhí)行。

表6 改進(jìn)的并發(fā)控制與傳統(tǒng)的并發(fā)控制的比較

5 結(jié) 束 語

由于傳感器網(wǎng)絡(luò)能量、通信能力、計(jì)算存儲能力有限,基于傳感器網(wǎng)絡(luò)的服務(wù)管理需要強(qiáng)調(diào)傳感器網(wǎng)絡(luò)的資源重用,避免不必要的資源浪費(fèi)。本文提出的面向傳感器網(wǎng)絡(luò)的服務(wù)管理方法,使用基于推理的上下文感知工作流構(gòu)建服務(wù),并改進(jìn)服務(wù)請求并發(fā)控制,實(shí)現(xiàn)了資源的重用,更加適應(yīng)資源受限的傳感器網(wǎng)絡(luò)。無線傳感器網(wǎng)絡(luò)作為復(fù)雜網(wǎng)絡(luò)在工程技術(shù)領(lǐng)域的典型應(yīng)用,其研究對于復(fù)雜網(wǎng)絡(luò)的研究將會發(fā)揮一定的推動作用。

[1] STROGATZ S H. Exploring complex networks[J]. Nature,2001, 410: 268-276.

[2] NEWMAN M E J. The structure and function of complex networks[J]. SIAM Review, 2003, 45:167-256.

[3] CHANG S S, YOUNG-BAE K. Design and implementation of intelligent home control systems based on active sensor networks[J]. IEEE Trans on Consumer Electronics, 2008,3(54): 1177-1184.

[4] CHUN Ou-yang, ROSA M L, HOFSTEDE A H M, et al.Toward web-scale workflows for film production[J]. IEEE Internet Computing, 2008, 5(12): 53-61.

[5] LIMA G H E L, SILVA L C , NETO P F R. WSN as a tool for supporting agriculture in the precision irrigation[C]//Proc of IEEE ICNS’2010. Cancun: IEEE, 2010: 137-142.

[6] WANG Xue, WANG Sheng, BI Dao-wei. Distributed visual-target surveillance system in w ireless sensor networks[J]. IEEE Trans on Systems, Man, and Cybernetics,Part B: Cybernetics, 2009, 5(39): 1134-1146.

[7] DELICATO F, PIRES P, PIRMEZ L, et al. A flexible middleware system for w ireless sensor networks[C]//Proc of ACM/IFIP/USENIX M iddleware’2003. New York:ACM,2003: 474-492.

[8] LEGUAY J, LOPEZ-RAMOS M, JEAN-MARIE K, et al.An efficient service oriented architecture for heterogeneous and dynamic w ireless sensor networks[C]//Proc of LCN’2008. Montreal:IEEE,2008: 740-747.

[9] NIU Wen-jia, LI Gang, ZHAO Zhi-jun, et al.Multi-granularity context model for dynam ic Web service composition[J]. Journal of Network and Computer Applications, 2011, 1(34):312-326。

[10] LUH Y, PAN C. Collaborative workflow solution for distributed product development[C]//Proc of IEEE CSCWD’2008. Xi’an: IEEE, 2008: 594-599.

[11] TSAI M. The workflow development for electronic manufacturing industry[C]//Proc of IEEE CSCWD’2008.Xi’an: IEEE, 2008: 688-692.

[12] WEISER M. Ubiquitous Computing[J]. Computer, 1993,10(26): 71-72.

[13] W IELAND M, KACZMARCZYK P, NICKLAS D.Context integration for smart workflows[C]//Proc of PerCom’2008. Hong Kong: [s.n.], 2008: 239-242.

[14] CHAARI T, EJIGU D, LAFOREST F, et al. A comprehensive approach to model and use context for adapting applications in pervasive environments[J]. Journal of Systems and Software, 2007, 12(80): 1973-1992.

[15] MODAFFERI S, BENATALLAH B, CASATI F, et al. A methodology for designing and managing context-aware workflows[M]. International Federation for Information Processing, Mobile Information Systems II. NewYork:Springer, 2005: 91-106.

[16] ARDISSONO L, FURNARI R, GOY A, et al. A framework for the management of context-aware workflow systems[C]//Proc of WEBIST’2007. Noordw ijkerhout:ACM, 2007: 1-9.

[17] JONGSUN C, YONGYUN C, JAEYOUNG C. A context-aware workflow system supporting a user’s dynam ic service demands in ubiquitous environments[C]//Proc of MUE’2007. Seoul: IEEE, 2007: 425-430.

[18] Kang DongHyun, Han Saeyoung, Yoo SeoHee, et al.Prediction-based dynamic thread pool scheme for efficient resource usage[C]//Proc of CIT Workshops’2008. Sydney:IEEE, 2008: 159-164.

[19] WANG Hao, TONG Yi-zhu, LIU Hong, et al.Application-aware interface for SOAP communication in web services[C]//Proc of CLUSTR’2006. Barcelona: IEEE,2006: 1-8.

[20] CHARLES F. Rete: A fast algorithm for the many pattern/many object pattern match problem[J]. Artificial Intelligences, 1982, 1(19): 17-37.

[21] DING Xiao, ZHONG Xiao-an. Improving rete algorithm to enhance performance of rule engine systems[C]//Proc of ICCDA’2010. Qinhuangdao: IEEE, 2010: 572-575.

[22] GUDGIN M, HADLEY M, MENDELSOHN N, et al.SOAP version 1.2 Part 1: messaging framework (2nd ed).[EB/OL][2010-02-02]. http://www.w3.org/TR/soap12-part1/.

編 輯 蔣 曉

猜你喜歡
線程沖突規(guī)則
耶路撒冷爆發(fā)大規(guī)模沖突
撐竿跳規(guī)則的制定
基于C#線程實(shí)驗(yàn)探究
數(shù)獨(dú)的規(guī)則和演變
“三宜”“三不宜”化解師生沖突
基于國產(chǎn)化環(huán)境的線程池模型研究與實(shí)現(xiàn)
讓規(guī)則不規(guī)則
淺談linux多線程協(xié)作
TPP反腐敗規(guī)則對我國的啟示
“鄰避沖突”的破解路徑
屏东市| 四川省| 酉阳| 屯门区| 西贡区| 博白县| 奉新县| 镇沅| 封丘县| 定襄县| 灌云县| 随州市| 唐山市| 于都县| 旺苍县| 兴宁市| 江津市| 会东县| 靖远县| 闻喜县| 化隆| 临沭县| 万荣县| 尖扎县| 红安县| 舟山市| 台中市| 连城县| 高陵县| 西平县| 洮南市| 名山县| 五寨县| 封丘县| 日土县| 巍山| 邯郸县| 北辰区| 吉木乃县| 阳曲县| 禄劝|