国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      Web應(yīng)用部署約束自動(dòng)檢測(cè)方法

      文檔序號(hào):6332513閱讀:160來源:國知局
      專利名稱:Web應(yīng)用部署約束自動(dòng)檢測(cè)方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及一種部署約束檢測(cè)的方法,尤其涉及一種面向Web應(yīng)用的部署約束自 動(dòng)檢測(cè)方法,屬于計(jì)算機(jī)軟件技術(shù)領(lǐng)域。
      背景技術(shù)
      部署(Deployment)是計(jì)算機(jī)軟件生命周期的一個(gè)重要階段,介于軟件開發(fā)完成 并交付到軟件系統(tǒng)成功運(yùn)行之間,主要承擔(dān)軟件系統(tǒng)運(yùn)行前的準(zhǔn)備工作。部署的直接目標(biāo) 是保障軟件系統(tǒng)能夠正確安裝和運(yùn)行,同時(shí)滿足使用者的相關(guān)需求。隨著軟件技術(shù)、軟件形 態(tài)和軟件規(guī)模的發(fā)展,基于模型的部署方法成為軟件部署的主要方法之一。軟件部署涉及部署方案的設(shè)計(jì)和部署約束的檢查。其中,部署方案刻畫了軟件部 署時(shí)的物理拓?fù)浣Y(jié)構(gòu)、構(gòu)成軟件應(yīng)用系統(tǒng)的組件的安裝位置和關(guān)聯(lián)關(guān)系、運(yùn)行環(huán)境的配置 信息等,是軟件部署所期望達(dá)到的目標(biāo),是部署過程中實(shí)際執(zhí)行各種操作的參考依據(jù);部署 約束定義了部署過程和部署方案必須滿足的限制和遵循的規(guī)則,主要涉及軟件部署時(shí)需要 考慮的資源依賴、功能/非功能需求和最佳實(shí)踐等方面。在部署方案的設(shè)計(jì)和規(guī)劃過程中, 可能存在對(duì)已聲明約束的違背情況,如不滿足約束所定義的資源需求、參數(shù)值匹配。部署 約束檢測(cè)用以檢驗(yàn)部署方案對(duì)需要遵循的限制和規(guī)則是否違背,能夠盡早的發(fā)現(xiàn)并定位部 署方案中存在的問題,有助于提高部署方案的正確性。多層架構(gòu)的Web應(yīng)用已成為當(dāng)前主流的網(wǎng)絡(luò)應(yīng)用軟件,Web應(yīng)用具有開放、動(dòng)態(tài)和 分布的特點(diǎn),系統(tǒng)的規(guī)模和復(fù)雜度也不斷增大。Web應(yīng)用和運(yùn)行環(huán)境的異構(gòu)性使得約束類型 更為復(fù)雜多樣,系統(tǒng)規(guī)模的擴(kuò)大和分散導(dǎo)致約束數(shù)量大大增加,這都為部署約束檢測(cè)帶來 了更多的困難。當(dāng)前已有的發(fā)明專利和學(xué)術(shù)研究對(duì)軟件系統(tǒng)部署問題給予了很多的關(guān)注并形成 了相關(guān)的成果。一些發(fā)明專利提出了軟件和應(yīng)用系統(tǒng)相關(guān)的部署方法,具有代表性的包括一種 普適計(jì)算環(huán)境下部署與配置方法(申請(qǐng)?zhí)?200810143799. 4)、分布式計(jì)算機(jī)系統(tǒng)架構(gòu)及分 布式應(yīng)用的設(shè)計(jì)、部署和管理(申請(qǐng)?zhí)?00410033027. 7)、分布式軟件系統(tǒng)的部署方法(申 請(qǐng)?zhí)?00610099028. 0)、具有依賴關(guān)系組件的部署關(guān)系和方法(申請(qǐng)?zhí)?00610138332. 1) 和軟件部署方法和系統(tǒng)及軟件部署服務(wù)器和用戶服務(wù)器(申請(qǐng)?zhí)?200710195500. 5)等,上 述發(fā)明專利主要針對(duì)不同環(huán)境和不同類型的軟件系統(tǒng)提出對(duì)應(yīng)的部署方法或系統(tǒng)實(shí)現(xiàn),主 要用以解決部署過程困難、版本不一致等問題,提高部署過程的自動(dòng)化程度和可擴(kuò)展性。但 是,現(xiàn)有的發(fā)明專利沒有針對(duì)Web應(yīng)用系統(tǒng)部署過程中涉及到的約束提出專門的自動(dòng)化檢 測(cè)方法,難以保證部署方案的正確性。在學(xué)術(shù)研究方面,面向SOA應(yīng)用部署和配置的聲明式約束框架(參見文獻(xiàn)Luo J, Li Y, Qiu J, Chen Y. Declarative Constraint Framework for SOA Deployment and Configuration. In ICWS,08,pages 637-644,2008)將部署模型所描述的部署方案作為 約束的應(yīng)用和驗(yàn)證對(duì)象,通過約束模板和約束驗(yàn)證等幾個(gè)關(guān)鍵步驟來完成模型所描述的部署方案的約束生成和驗(yàn)證。該方法將約束模板轉(zhuǎn)換為OCL對(duì)象約束語言(參見文獻(xiàn) http://www. omg. org/spec/0CL/2. 0/PDF)表示的形式化約束描述并進(jìn)行解析和驗(yàn)證,但是 基于約束模板的約束生成和實(shí)例化過程仍需要人工參與,自動(dòng)化程度較弱,同時(shí)能夠驗(yàn)證 的約束類型也較為有限?;谲浖Y源配置模型的約束驗(yàn)證提出了部署配置過程中資源 和參數(shù)配置層面的約束驗(yàn)證方法(參見文獻(xiàn)Li Y,Qiu J,Sun Kff, Chen Y. Modeling and VerifyingConfiguration in Service Deployment. In SCC' 06, pages 238-248, 2006)禾 用基于軟件資源配置模型表示的參數(shù)配置信息和關(guān)聯(lián)關(guān)系來進(jìn)行約束驗(yàn)證,但僅關(guān)注部署 配置過程中資源和參數(shù)配置的約束檢測(cè)。因此,當(dāng)前針對(duì)Web應(yīng)用系統(tǒng)的部署約束驗(yàn)證工 作在約束生成和檢測(cè)的自動(dòng)化程度方面還有待提高,難以支持約束的自動(dòng)生成,同時(shí)所覆 蓋的約束類型也較為有限。

      發(fā)明內(nèi)容
      本發(fā)明的目的是克服上述現(xiàn)有技術(shù)中約束驗(yàn)證檢測(cè)自動(dòng)化程度較弱的缺點(diǎn),提出 一種新的Web應(yīng)用部署中約束的自動(dòng)檢測(cè)方法,能夠針對(duì)Web應(yīng)用的部署方案模型實(shí)施較 為全面的、自動(dòng)化的部署約束檢測(cè),提高設(shè)計(jì)階段的部署方案的正確性,從而避免實(shí)際執(zhí)行 Web應(yīng)用部署操作時(shí)由于對(duì)部署約束的違背而導(dǎo)致的部署失敗。本發(fā)明的技術(shù)方案如

      圖1所示,Web應(yīng)用部署約束自動(dòng)檢測(cè)方法,包括以下幾個(gè)步 驟1)建立Web應(yīng)用的部署方案模型D(Q) = <U,R>,Ω表示W(wǎng)eb應(yīng)用,D( Ω )為一個(gè) 二元組,其中U表示為部署方案模型中所涉及的實(shí)體集合Iu1,…,un},R表示為部署方案模 型中實(shí)體之間的關(guān)系集合Ir1, ···,&}。所述實(shí)體集合Iu1,…,un}的元素Ui = <ID,Name, Type, Protocol, InterfaceSet, CapabilitySet, RequirementSet, StateSet, AttrSet〉, Ui e {Ul,…,un},表示W(wǎng)eb應(yīng)用Ω涉及的部署實(shí)體,其中部署方案模型實(shí)體元素對(duì)應(yīng)的元 組分量分別表示實(shí)體的標(biāo)識(shí)、名稱、協(xié)議、接口、能力,需求、狀態(tài)和屬性。所述關(guān)系集合的元 素 rj =〈ID,Name,Type, SourcelD,TargetID,Volume〉,rs e Ir1,…,rm},以有向邊表示 Web應(yīng)用Ω部署時(shí)實(shí)體間的關(guān)系,其中部署方案模型實(shí)體關(guān)系對(duì)應(yīng)的元組分量分別表示關(guān) 系的標(biāo)識(shí)、名稱、類型、源端實(shí)體、目的端實(shí)體和該類型關(guān)系能夠?qū)嵗臄?shù)量。部署方案模型刻畫了所期望的Web應(yīng)用的最終部署狀態(tài),包括組件的安裝位置、 參數(shù)的配置情況、實(shí)體間的關(guān)聯(lián)關(guān)系等。部署方案模型確定了構(gòu)成Web應(yīng)用的組件(如 EJB、WebSerViCe)、應(yīng)用運(yùn)行環(huán)境(如計(jì)算機(jī)、Java虛擬機(jī)、Web容器)、資源(如數(shù)據(jù)源、 內(nèi)存、線程)和服務(wù)(如日志服務(wù)、事務(wù)服務(wù)、監(jiān)控服務(wù))等實(shí)體,同時(shí)模型還確定各實(shí)體 在部署時(shí)存在的關(guān)聯(lián)關(guān)系。2)根據(jù)Web應(yīng)用的部署方案模型D(Q),檢測(cè)Web應(yīng)用部署約束,Web應(yīng)用部署約 束是Web應(yīng)用配置約束、應(yīng)用組件依賴約束和Web應(yīng)用組件部署描述約束中的一種或幾種 的組合。三大類約束其實(shí)是涉及到部署方案的不同層次的,部署描述約束和依賴約束和應(yīng) 用配置約束分別從體系結(jié)構(gòu)到參數(shù)配置,按照“由高到底,由粗到細(xì)”的層次和粒度覆蓋了 部署方案模型的多個(gè)方面。檢測(cè)Web應(yīng)用配置約束(Configuration Constraint),應(yīng)用配置約束是部署過程 中類型較多且最為復(fù)雜的一類,主要限制和規(guī)范應(yīng)用在部署時(shí)必須滿足的資源依賴、功能/非功能需求以及部署時(shí)考慮的策略和最佳實(shí)現(xiàn)。首先確定配置約束模板,第二步建立配置約束模板與部署方案中實(shí)體間關(guān)聯(lián)關(guān)系的映射mapping ,CP, α), CP為配置約束模板,R為關(guān)聯(lián)關(guān)系,α為映射操作;第三步遍歷部署方案模型D ( Ω ),得到關(guān)聯(lián)關(guān)系集合R和R所關(guān)聯(lián)的實(shí)體集合U, 根據(jù)映射(R,CP, α)綁定對(duì)應(yīng)的約束模板,將遍歷獲得的部署方案實(shí)例代入各個(gè)約束模 板,得到當(dāng)前Web應(yīng)用部署所需要滿足的配置約束集合。配置約束模板的實(shí)例化時(shí),遍歷部署方案模型,得到關(guān)聯(lián)關(guān)系集合R = {Rhos, Rdep, RltJ,根據(jù)R的類型細(xì)分為多個(gè)類型的關(guān)系子集合,同時(shí)獲得R所關(guān)聯(lián)的實(shí)體集合U的信息。第四步將配置約束集合轉(zhuǎn)換為OCL語言形式,采用OCL解析器逐一自動(dòng)執(zhí)行驗(yàn)證。 OCL解析器會(huì)給出結(jié)果true或false,分別表示滿足或違背相應(yīng)的配置約束。所述實(shí)體的類型包括應(yīng)用組件、運(yùn)行環(huán)境、資源和服務(wù),即Type e {App,Env, Res, Ser} ο所述實(shí)體關(guān)系的類型包括實(shí)體間的依賴關(guān)系(D印endency)、Web應(yīng)用組件和運(yùn)行 環(huán)境間的宿主關(guān)系(Hosting)、實(shí)體與實(shí)體間的位置關(guān)系(Location)和實(shí)體間的包含關(guān)系 (Containning)。艮口 Type e {Dep, Hos, Loc, Con}。關(guān)系元素中的關(guān)系源/目的標(biāo)識(shí)與當(dāng)前關(guān)系所作用的實(shí)體相對(duì)應(yīng),即SourceID/ TargetID = Ui. ID, Ui ^ Iu1,…,un}。所述配置約束包括唯一性約束(Unique Constraint)、等價(jià)性約束 (EqualityConstraint) λ ^ W ^ ^ (Compability Constraint)M (Resource Constraint)禾口位置約束(Location Constraint)。在建立配置約束模板與部署方案中實(shí)體間關(guān)聯(lián)關(guān)系的映射時(shí),所述映射方式為部署方案模型中的宿主關(guān)系與唯一性約束或兼容性約束建立映射關(guān)系;依賴關(guān)系與資源約束或等價(jià)性約束建立映射關(guān)系;位置關(guān)系與位置約束建立映射關(guān)系。唯一性約束限制了部署實(shí)體在指定范圍內(nèi)的不可重復(fù)性,表示對(duì)于部署方案模型 中在同一環(huán)境/容器內(nèi)容的部署實(shí)體,其標(biāo)識(shí)必須唯一,如部署環(huán)境中物理節(jié)點(diǎn)的IP地址 必須唯一;同一 EJB容器環(huán)境內(nèi),EJB組件的JNDI標(biāo)識(shí)唯一等。所述唯一性約束的配置約 束模板為=CPunit^aD1,…,IDk, Scope〉,其中,ID1,…,IDk為部署實(shí)體的唯一性標(biāo)識(shí)集合, Scope = um e U,且通常 Um. Type = Env0所述等價(jià)性約束的配置約束模板為CPeiUal<Capability,Requirement),是指 兩個(gè)部署實(shí)體之間,在實(shí)體提供的服務(wù)和需求方面,對(duì)應(yīng)的參數(shù)配置必須一致。其中, Capability指服務(wù)提供實(shí)體所提供功能對(duì)應(yīng)的參數(shù),Requirement則對(duì)應(yīng)于功能需求方的 配置參數(shù)所述資源約束的配置約束模板為CPm—^Capability,ReqSet>,是指組件對(duì)資源 的需求總和應(yīng)小于所提供的資源數(shù)量。其中,Capability指資源提供實(shí)體所提供資源總量, ReqSet則對(duì)應(yīng)于資源需求方的資源需求總量所述兼容性約束模板為CP^—anterfaceSeti,InterfaceSet2),是指當(dāng)Web應(yīng) 用要部署的組件與運(yùn)行環(huán)境中已有組件相同但版本不同時(shí),進(jìn)行組件的替換和升級(jí)時(shí)新的組件需要兼容被替換組件。其中,InterfaceSet1為低版本組件的接口集合,InterfaceSet2 為新版本組件的接口集合所述位置約束模板為CPltjeatiJu1, u2, target, locType〉,是指由位置關(guān)系約束 必須兩應(yīng)用組件部署在同一容器內(nèi)或必須不處于同一容器中。其中,U1, u2 e U,為應(yīng)用 組件;target e U,為組件容器;IocType為位置關(guān)系類型,IocType e {Co-Location, anti-location},艮口共存或不能共存。上述各配置約束的模板定義可參見表1表1配置約束模板定義表
      權(quán)利要求
      Web應(yīng)用部署約束自動(dòng)檢測(cè)方法,包括以下步驟1)建立Web應(yīng)用的部署方案模型D(Ω)=<U,R>,其中Ω為Web應(yīng)用,U為實(shí)體集合{u1,…,un};R為實(shí)體之間的關(guān)聯(lián)關(guān)系集合{r1,…,rm};2)根據(jù)Web應(yīng)用的部署方案模型,檢測(cè)Web應(yīng)用配置約束首先確定配置約束模板,第二步建立配置約束模板與部署方案中實(shí)體間關(guān)聯(lián)關(guān)系的映射mapping(R,CP,α),CP為配置約束模板,R為關(guān)聯(lián)關(guān)系,α為映射操作;第三步遍歷部署方案模型D(Ω),得到關(guān)聯(lián)關(guān)系集合R和R所關(guān)聯(lián)的實(shí)體集合U,根據(jù)映射(R,CP,α)綁定對(duì)應(yīng)的約束模板,將遍歷獲得的部署方案實(shí)例代入各個(gè)約束模板,得到當(dāng)前Web應(yīng)用部署所需要滿足的配置約束集合;第四步將配置約束集合轉(zhuǎn)換為OCL語言形式,采用OCL解析器逐一自動(dòng)執(zhí)行驗(yàn)證。
      2.根據(jù)權(quán)利要求1所述的Web應(yīng)用部署約束自動(dòng)檢測(cè)方法,其特征在于根據(jù)部署方案 模型檢測(cè)Web應(yīng)用組件依賴約束首先將部署方案模型D(Q)抽象為有向圖G,有向圖G的節(jié)點(diǎn)代表實(shí)體,有向邊代表實(shí) 體間的依賴關(guān)系;然后遍歷有向圖G檢測(cè)G是否滿足依賴約束。
      3.根據(jù)權(quán)利要求1或2所述的Web應(yīng)用部署約束自動(dòng)檢測(cè)方法,其特征在于根據(jù)部署 方案模型檢測(cè)Web應(yīng)用組件部署描述約束將部署描述文件和組件部署包的內(nèi)容進(jìn)行對(duì)比。
      4.根據(jù)權(quán)利要求1所述的Web應(yīng)用部署約束自動(dòng)檢測(cè)方法,其特征在于所述實(shí)體的類 型包括應(yīng)用組件、運(yùn)行環(huán)境、資源和服務(wù)。
      5.根據(jù)權(quán)利要求1所述的Web應(yīng)用部署約束自動(dòng)檢測(cè)方法,其特征在于所述實(shí)體關(guān)聯(lián) 關(guān)系的類型包括實(shí)體間的依賴關(guān)系、Web應(yīng)用組件和運(yùn)行環(huán)境間的宿主關(guān)系、實(shí)體與實(shí)體間 的位置關(guān)系和實(shí)體間的包含關(guān)系。
      6.根據(jù)權(quán)利要求5所述的Web應(yīng)用部署約束自動(dòng)檢測(cè)方法,其特征在于所述配置約束 包括唯一性約束、等價(jià)性約束、兼容性約束、資源約束和位置約束。
      7.根據(jù)權(quán)利要求6所述的Web應(yīng)用部署約束自動(dòng)檢測(cè)方法,其特征在于所述映射方式為部署方案模型中的宿主關(guān)系與唯一性約束或兼容性約束建立映射關(guān)系;依賴關(guān)系與資源約束或等價(jià)性約束建立映射關(guān)系;位置關(guān)系與位置約束建立映射關(guān)系。
      8.根據(jù)權(quán)利要求7所述的Web應(yīng)用部署約束自動(dòng)檢測(cè)方法,其特征在于所述唯一性約 束的配置約束模板為=CPunit^aD1,…,IDk, Scope〉,其中,ID1,…,IDk為實(shí)體的唯一性標(biāo) 識(shí)集合,Scope = um e U。
      9.根據(jù)權(quán)利要求7所述的Web應(yīng)用部署約束自動(dòng)檢測(cè)方法,其特征在于所述等價(jià)性約 束的配置約束模板為CPequal<Capability,Requirement), Capability指服務(wù)提供實(shí)體所提 供功能的參數(shù),Requirement則對(duì)應(yīng)于功能需求實(shí)體的配置參數(shù)。
      10.根據(jù)權(quán)利要求7所述的Web應(yīng)用部署約束自動(dòng)檢測(cè)方法,其特征在于所述資源約束 的配置約束模板為CPMS。urae<Capability,ReqSetXCapability指資源提供實(shí)體所提供的資源總量,ReqSet是資源需求實(shí)體的資源需求總量。
      11.根據(jù)權(quán)利要求7所述的Web應(yīng)用部署約束自動(dòng)檢測(cè)方法,其特征在于所述兼容性約 束模板為 CPe-^JInterfaceSeti,InterfaceSet2), InterfaceSet1 為低版本組件的接口 集合,InterfaceSet2為新版本組件的接口集合。
      12.根據(jù)權(quán)利要求7所述的Web應(yīng)用部署約束自動(dòng)檢測(cè)方法,其特征在于所述位置約束 模板為 CPlocation<ui; u2, target, locType>, U1, U2 為應(yīng)用組件;target 為組件容器;IocType 為位置關(guān)系類型。
      13.根據(jù)權(quán)利要求2所述的Web應(yīng)用部署約束自動(dòng)檢測(cè)方法,其特征在于檢測(cè)G是否滿 足依賴約束的方法為A、遍歷G找到出度為O的節(jié)點(diǎn)集合Set(a);B、判斷Set(a)不為空,從Set (a)中任意取出一個(gè)節(jié)點(diǎn)u ;C、將節(jié)點(diǎn)u從G中刪除;D、找到G中依賴u的所有節(jié)點(diǎn),將這些節(jié)點(diǎn)的出度減1;E、繼續(xù)遍歷新生成的G直至Set(a)為空,判斷G是否也為空,為空表明滿足依賴約束, 否則,表明存在依賴沖突。
      全文摘要
      本發(fā)明公開了一種Web應(yīng)用部署約束自動(dòng)檢測(cè)方法,包括以下步驟1)建立Web應(yīng)用的部署方案模型D(Ω)=<U,R>,Ω為Web應(yīng)用,U為部署方案的實(shí)體集合;R為實(shí)體之間的關(guān)系集合;2)根據(jù)Web應(yīng)用的部署方案模型,檢測(cè)應(yīng)用部署約束。本發(fā)明的方法,可以在完成Web應(yīng)用部署方案模型的設(shè)計(jì)后,對(duì)多種類型、多個(gè)層面的部署約束自動(dòng)實(shí)施檢測(cè),在檢測(cè)到當(dāng)前Web應(yīng)用對(duì)部署約束的違背后,能夠自動(dòng)定位并提示用戶進(jìn)行Web應(yīng)用部署方案的修改來保證對(duì)部署約束的滿足,從而確保后續(xù)依據(jù)部署方案進(jìn)行部署操作執(zhí)行的成功,大大提高了Web應(yīng)用的部署效率和正確性。
      文檔編號(hào)G06F11/36GK101957794SQ20101028936
      公開日2011年1月26日 申請(qǐng)日期2010年9月21日 優(yōu)先權(quán)日2010年9月21日
      發(fā)明者陳偉, 魏峻, 黃濤 申請(qǐng)人:中國科學(xué)院軟件研究所
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1