上一章中培偉業IT常青樹有關專家講了企業要發揮ESB的用途,標準化、規范化是捷徑。那么,相應地企業要制定哪些標準和規范呢?企業ESB服務成效的度量標準是什么呢?
1章 ESB服務治理標準路線圖
在說明企業需要制定的ESB服務標準規范之前,為了更好地理解各類標準規范,我們簡單回顧一下國際標準化組織制定的SOA相關服務治理的標準體系。
第一個階段,XML的創建。可擴展標記語言(XML)是SOA的基石,它規定了服務之間以及服務內部數據交換的格式和結構。
第二個階段,人們提出了Web服務的概念,出現了三個著名的Web服務標準和規范:簡單對象訪問協議(SOAP)、Web服務描述語言(WSDL)及通用服務發現和集成協議(UUDI),極大推動Web服務的普及和發展。
第三個階段,隨著SOA推廣和普及工作開始加速,出來三個重量級標準SCA/SDO/WS-Policy。SCA和SDO構成了SOA編程模型的基礎,而WS-Policy建立了SOA組件之間安全交互的規范。這三個規范的發布,標志著SOA進入了實施階段。
第四階段,服務編排與服務治理。隨著Web 服務逐漸成為系統架構和實現組織內外的業務流程與業務協作的基礎,出現了一種規范、統一、功能強大的服務與業務流程的編排語言,以及與之對應的產品。有兩種 Web 服務合成語言:1)業務流程執行語言(WS-BPEL):2) Web服務編排語言(Web WS-CDL)。上述兩種語言的目標都是以一種面向過程的方式,把多個Web服務粘合起來。
可以看出,正是國際標準化組織制定的這一系列的標準規范,推動SOA服務化從概念到可實施可落地。
2章 企業SOA技術規范
技術規范是基礎技術平臺建設成功的重要保障,建設基礎技術平臺的通用策略是“搭平臺、建規范、上應用、跑數據"。對于ESB服務集成平臺,標準和規范是前期建設的核心。通過標準和規范的建立,可以明確各業務系統接入集成平臺的方式方法,提高接入質量和接入效率,從而保障服務的穩定、高效運行。
ESB全面支持服務及服務常用形式Web Service,簡化了服務的創建和封裝,并能夠靈活地編排服務,以滿足敏捷響應業務變化的需要。服務提供方負責處理本系統的業務邏輯,將業務處理進行封裝,以webservice形式對外發布。本章節圍繞以服務為核心的服務接入規范、服務編碼規范、服務管控規范等環節進行說明,如下圖所示。
3章 ESB服務接入規范
ESB服務接入規范包括服務調用過程、服務描述、請求報文、響應報文、確認報文、異常報文、報文大小等內容。
1、服務調用過程:描述同步服務調用和異步服務調用過程規范;
2、服務描述規范,說明接口服務的描述形式,服務消費者可以根據服務描述了解服務的技術實現形式、功能和輸入/輸出等信息。服務描述使用WSDL模式。
3、請求報文規范:服務消費者運行時需要使用SOAP報文與ESB上暴露的服務進行交互。
4、響應報文規范:服務提供者需要使用SOAP報文與ESB進行交互。響應報文的SOAP Body內容由具體的服務描述文件WSDL來定義。
5、確認報文規范:確認報文主要使用在異步調用場景,報文的發送方確認已經正確收到報文。
6、異常報文規范:異常報文在同步、異常場景下都可以用到。在同步場景下作為異常響應報文,在異步場景下作為異常確認報文。服務提供者運行時需要使用SOAP報文與ESB進行交互。
7、報文大小規范:限制單次服務調用所攜帶的數據量大小,有助于降低服務總線的負載,提高服務總線的性能。
4章ESB服務編碼規范
1.應用編碼規范
所有的業務支撐系統都需要進行統一的編碼,該編碼全局唯一并統一管理。 應用系統編碼規則參考:<系統域編碼>.<系統編碼> 。
2.服務編碼規范
服務規范化有助于開發人員理解服務的業務意義。服務規范主要應用于服務定義文件WSDL和ESB部署過程中。操作編碼規則參考:<應用編碼>.<服務名稱>
3.操作編碼規范
“操作”名稱的規范有助于相關人員更直觀地理解某操作的業務功能。操作編碼規則參考:<動賓短語>+SYN,使用動賓短語表示某一操作的業務功能,該短語不宜過長。
4.異常編碼規范
規范化應用系統對外暴露接口的異常信息,有助于相關人員在發現異常時進行準確的問題定位和解決。異常編碼規則參考:<應用編碼> - <9位編碼>。使用應用編碼加9位編碼的方式可以方便地理解異常編碼所發生的應用以及通過編碼表查看異常的原因 。
5.請求編碼規范
請求編碼全局唯一標識了服務消費者的服務請求,該編碼是服務消費者每次調用服務時在請求消息的SOAP Header中設置的全局唯一的標識,供服務監控系統進行服務分析用。請求編碼規則參考:<應用編碼> - <日期 yyyyMMdd> - <10位流水號>
6.版本編碼規范
版本是服務操作的版本,是為了服務提供者標識某一操作的不同形式。版本編碼規則參考:v<大版本號>.<小版本號>。
5章服務管控技術規范
服務管控規范包括服務注冊、服務發布、服務訂閱、服務目錄等方面。
1、服務注冊規范:服務注冊包括服務的名稱、地址、所屬應用、所屬機構、描述、創建人、注冊時間等屬性;
2、服務發布:服務在服務管理平臺注冊后,可以通過頁面操作將服務發布到ESB運行平臺,且相同的服務發布到不同環境盡量不需要考慮環境因素。ESB運行環境與服務管理平臺分離,即服務發布后,即使服務管理平臺發生故障也不影響ESB平臺的正常運行。
3、服務訂閱:服務總線可對注冊的服務進行訂閱,當服務發生變化時,將變化信息推送給服務總線端。
4、服務目錄:服務目錄具備靈活的服務分類功能;服務目錄維護功能;服務目錄定義功能;服務目錄權限控制功能。
6章 ESB服務的度量
企業利用ESB進行服務化改造以后,如何度量服務的運行情況呢?
我們可以通過監控服務調用的成功率、服務響應平均時間、調用違規次數等指標來了解服務的運行情況。可以通過服務調用頻次、服務調用排名,來了解哪些服務對企業來說是重要的,需要升級的,哪些服務是不重要,需要降級以至于可以退役的,以此為依據進行服務全生命周期管理。
制定標準和規范總體來說,有利于整個行業的集成能力提升。集成能力建立在公有標準而不是私有標準上,更有利于發揮行業合力。可以降低集成費用,標準化的方式有利于分享傳承,提高開發效率,也使得整體服務周期管理更加可預測。
想了解更多IT資訊,請訪問中培偉業官網:中培偉業