服務編排和組態
對于ESB企業服務總線,今年準備在服務編排和組態方面進行進一步的完善,即增加可視化的輕量服務編排和組合的能力,通過可配置和圖形化的服務編排來進行服務設計,是否滿足SCA/SDO標準不是重點,重要的是能夠根據服務建模的元數據來動態的生成服務組件和自動化的托管和部署。
適配器往往是ESB最基本的能力,在服務編排中考慮最基本的數據庫適配,文件適配,JMS消息適配,http適配等最基本的適配。適配器的數據源連接最基本的數據庫或文件,而最終適配的結果需要進行結構化的轉換。數據映射是另外一個重要能力,在服務編排中需要增加數據映射節點,即可以對兩個不同格式的數據模型進行映射和匹配,在數據映射過程中還需要支持最基本的數字運算符的能力。
路由是ESB的另外一個基本功能,在服務編排過程中需要支持進行路由的靈活設計,既支持靜態路由,也應該支持基于消息頭和消息輸入內容的動態路由能力。
服務組合能力,在輕量的服務編排中需要支持進行服務組合的能力,即上一個服務調用的輸出可以做為下一個服務的調用輸入,在服務組合的過程中進行相應的數據映射工作。服務在組合過程中需要單獨增加外部服務調用節點,即通過該節點可以調用外部的服務能力。如果僅僅是實現最簡單的服務代理,可以看到也是僅僅需要做最簡單的服務配置即可以實現。消息事件管理,對于ESB的底層還是消息中間件,除了支持JMS消息的適配和轉換外,更加重點的是對于消息發布訂閱機制的支持,即1對多的消息發布,消息的訂閱,消息發送中的重試和流量控制等。
其它節點,主要包括了安全加密節點,通知節點,日志記錄節點,流量控制節點,訪問安全節點等,這些在原有服務封裝的可配置內容,仍然可以在服務編排過程中通過可視化的設計進行配置和引入。
對于這種服務組態化設計和工作流模型設計有點類似,但是差異還是比較大,即不同的節點往往都是對應的不同的屬性記錄,整個服務編排過程中完全是自動化運行而不需要人工干預。因此在整個組態設計中對于不同類型的節點都需要設置和擴展單獨的對象進行相應的設計態內容和屬性的記錄。
對于每一次完整的服務調用都會產生服務運行實例,管理員可以通過服務編排模型動態的進行服務運行狀態監控,同時可以查看到每一個活動節點的輸入和輸出信息。在這種場景下服務的設計態到運行態的轉換將成為在設計和實現中的重點。