WSRR Studio V8.0 應用系列,第 2 部分 使用 Studio 實現 WSRR 生命周期管理2

<sacl:state displayName=”Business Capability Identified” name=”CapabilityIdentified”>

<sacl:description> …………… </sacl:description>

</sacl:state>

<sacl:transition name=”fromCapabilityIdentified_toCharterReview”>

<sacl:sourceState>CapabilityIdentified</sacl:sourceState>

<sacl:operation name=”ProposeCharter” portType=”_:CapabilityLifecycle”/>

<sacl:targetState>CharterReview</sacl:targetState>

</sacl:transition>

上面的片段給出了服務生命周期狀態及狀態之間轉換的定義,例如可以通過名為 ProposeCharter 的操作,將服務狀態從 CapabilityIdentified 變為 CharterReview

OWL 文件,包含兩種,一種用於描述業務模型,一種用於描述分類系統,服務生命周期對應的分類系統可以在 Configuration Profile Files/OWL Content/Classifications 目錄下找到。

<owl:Class rdf:about=”&GEPLifecycles;CapabilityIdentified”>

         <rdfs:subClassOf rdf:resource=”&GEPLifecycles;CapabilityLifecycle”/>

</owl:Class>

<owl:Class rdf:about=”&GEPLifecycles;ProposeCharter”>

         <rdfs:subClassOf rdf:resource=”&GEPLifecycles;Transition”/>

</owl:Class>

上面的片段給出了服務生命周期狀態以及相關轉換的 OWL 定義。這些定義將會作為元數據信息添加到被治理的對象上,可以通過查詢相應的分類定義來獲取目前服務處於哪個狀態的信息。

Policy 文件,
用於描述狀態轉換所需要滿足的限制條件。可以在 Configuration Profile Files/POLICY 目錄下找到相應的描述文件。


6. policy 定義

XML error: The image is not displayed because the width is greater than the maximum of 580 pixels. Please decrease the image width.

上面的片段給出
4
所對應的校驗定義,從上面的片段可以看出,當 business service 對象,做名為 ProposeCharter 的狀態轉換操作時,名為”gep63_charter“的關係必須至少有一個關聯的對象。

上述的配置文件可以通過 WSRR Studio 進行圖形化的定製,不需要人手工編輯這些配置文件。下面將介紹 WSRR Studio 相關的功能。


回頁首

WSRR Studio 服務生命周期定製介紹

WSRR Studio 是一個基於 Eclipse RCP 產品,可以通過繪製 UML 圖形來實現對服務生命周期的定製。下面將結合具體的業務實例對這一過程進行介紹。

用戶場景:

客戶需要註冊公司內部所使用的 MQ 服務,從而實現服務的標準化,集中統一管理,以及運行時的動態查找。每一個 MQ 服務需要關聯到一個 XSD 文檔,用於描述消息的格式。該 MQ 服務的生命周期包含三個狀態:已創建,上線,下線。上線表示服務可用,下線表示服務不可用,已創建表示服務還處於開發部署階段。同時規定沒有綁定 XSD 文檔的 MQ 服務將不能變更為上線狀態。這一規定可以通過監管策略來實現。

WSRR Studio 實現上述業務場景,包含如下四步:

1.    創建業務模型

2.    創建生命周期

3.    綁定生命周期及創建監管策略

4.    導入到 WSRR

創建業務模型

打開 WSRR Studio
創建一個和 WSRR Server 相同版本的 profile project,以 WSRR8.0 為例,如下圖所示:


7. 創建 Profile Project

右鍵點擊剛創建完的 project, 選擇 NewWSRR Business Model, 詳細的創建過程在之前的文章裏面已經有介紹,創建出來的業務模型如下圖所示:


8. 創建業務模型

在創建的過程中,可以設置屬性是否必須有值,以及屬性的默認值。這些通過 General Tab 裏面的 Multiplicity 屬性和 Advanced Tab 裏面的 default value 來設置。在上面的業務模型中,MQService 的屬性除 QManager 以外,其他屬性都必須有值,其中 Host 的默認值是 localhostPort 的默認值設置為 2424XSDDocument 對象是已有對象,是從 XSD 模型裏面拖進來的。可以看到在 XSDDocument 對象的左上角有一個小圖標,它用以表示該對象是引用的其他模型裏面的對象。MQService XSDDocument 之間通過關係 MessageType 關聯。

創建生命周期

右鍵點擊 project,選擇 NewWSRR Lifecycle Cycle, 輸入必要的信息,其中 name 的取值必須是一個 NC Name。點擊 finish,進入生命周期編輯視圖,Studio 默認創建出了 initial state final state
修改 initial state 的名字為 Created
修改 final state 的名字為 Offline
然後創建一個新的 state,名字為 Online,用 transition 將他們關聯起來。如下圖所示:


9. 創建示例生命周期

目前該圖中的狀態轉換是自動轉換,需要在 transition 中加入 trigger event,將他變為人為控制的轉換。選中 transition,然後在 Triggers Tab 裏面添加 trigger,類型為 Signal Event


10. 創建 Signal event

點擊 ok 按鈕,默認會創建出名字是 signal1 signal event,可以在左側的導航樹中展開生命周期的定義,找到並選中剛創建出來的 singal event,然後在屬性裏面修改名字,如
11
所示。例如將 signal1 改為 MQPublish
重複上述步驟,在 Online Offline 之間的狀態轉換上加入名字為 MQRetire signal


11. 修改 signal 名字

以下文章點擊率最高

Loading…

     

如果這文章對你有幫助,請掃左上角微信支付-支付寶,給於打賞,以助博客運營