第4部分: 使用公用事件基礎設施開發可測量的組合應用程式
本系列討論如何開發組合應用程式來支援商務服務,本文是其中的第 4 部分。為了確定 組合應用程式是否滿足所確定營運目標,應用程式需要為可測量的。本文討論如何在基於公 共事件基礎設施的三個可重用構件的協助下開發可測量的組合應用程式。我們將從中瞭解為 什麼需要構件,以及如何使用其對組合應用程式進行測量。
引言
WebSphere® Integration Developer 和 WebSphere Process Server 將公用事件基 礎設施(Common Event Infrastructure,CEI)作為提供基本事件管理服務的方法引入。CEI 按照 CBE 規範的定義處理公用基礎事件(Common Base Event,CBE)。CEI 提供基於標準 XML 的事件格式,從而支援採用通用機制來記錄和查詢事件。在 WebSphere Integration Developer 內建 CEI 支援,可產生 CBE 事件。例如,可以選擇商務程序執行語言 (Business Process Execution Language,BPEL)活動,並隨後選擇一個活動開始或活動停 止事件,而這將自動產生 CBE。不過,您可能需要產生與 WebSphere Integration Developer 事件不對應的業務層級事件。可以使用商務程序引擎(Business Process Engine ,BPE)API 進行此工作。不過,由於此 API 公開 CBE 格式以及其他 CEI 特定的屬性,API 相關的部分包含在一個很方便使用的構件集中,此構件集支援對事件進行日誌記錄、查詢和 查看。本文將對這些構件進行說明,並將介紹如何在組合應用程式中使用它們。
捕獲業務層級事件
為了對組合應用程式進行測量,您需要捕獲業務層級事件。業務層級事件是捕獲與業務相 關的資訊的事件。例如,當銀行資金從一個賬戶轉帳到另一個賬戶時,會記錄一個事件。業 務層級事件可協助我們理解和改進企業開展業務的方式。記錄了業務事件後,可以對其進行 彙總,以確定業務趨勢,從而反過來提供所需的測量結果來提高業務。不過,業務層級事件 並不一定與任何具體 WebSphere Integration Developer 活動相關。WebSphere Integration 活動可以與一系列 WebSphere Integration Developer 步驟相對應。圖 2 顯 示了一些典型的 WebSphere Integration Developer 活動。業務層級的事件可以與一系列 WebSphere Integration Developer 活動相對應。
完全可測量的另一個要求是,能夠在事件中儲存任意資料。此任意資料在業務層級具有意 義。CBE 規範支援使用 CBE 的 ExtendedDataElement 部分來儲存任意資料。此部分將應用 程式特定的資料格式化為一組名稱-值對。
產生 CBE 事件
每種可監視組件類型(如商務程序、商務規則等等)都具有一組在 WebSphere Integration Developer 中預先定義的業務事件(請參見表 1)。不過,有時候這些預定義 的事件並不提供產生業務層級事件所需的靈活性。因此,為了給組合應用程式提供完全可測 量的能力,需要隨時產生業務層級事件。
表 1. 每個編輯器的可監視元素
編輯器 |
可監視元素 |
Assembly editor(僅 CEI) |
Operation |
Business process editor(CEI 和 Audit Log) |
Assign、Compensate、Empty、Flow(並行活動)、Invoke、Pick(接收選 擇)、Process、Receive、Reply、Rethrow、Scope、Script、Sequence、Staff、Switch( 選擇)、Template(未顯示)、Terminate、Throw、Variable、Wait、While(While 迴圈) |
Business object-mapping editor(僅 CEI) |
Map、Transformation(所有類型) |
Business rule-group editor(僅 CEI) |
Operation |
Business state machine editor(僅 CEI) |
Action、Entry、Exit、Guard、State、State Machine Definition(狀態 機)、Timer、Transition |
Human task editor(CEI 和稽核線索) |
Escalation、Task、Task Template(未顯示) |
Interface-mapping editor(僅 CEI) |
Operation Binding、Parameter mediation(所有類型) |
Selector editor(僅 CEI) |
Operation |
注意:在表 1 中,標識為稽核線索 事件是在流程編排器資料庫中作為審核事件產生的。 標識為 CEI 的事件是在 CEI 資料存放區庫中產生的。