都與集成最近我們為一家央企進行了關于基于企業服務總線(ESB)和面向服務架構(SOA)的企業應用集成(EAI)平臺的咨詢與實施,在此過程中,客戶經常會提出這樣的問題:應用集成平臺通常處于企業信息平臺的核心位置,很多系統平臺關聯,很多需要跨系統實現的業務都要經過集成平臺,因此集成平臺能否正常的運行,將對企業的業務運營產生重要的影響。
那如何才能確保企業應用集成平臺正常運行,保證業務運營的正常運作呢?針對這樣的問題,實施顧問們都會建議客戶進行集群部署,實現Fault Tolerance或者Load Balance等等,來確保平臺的可靠運行。除此之外,我還建議客戶建立一套集成平臺管理監控系統,對企業應用集成平臺以及平臺上部署的應用進行管理與監控,隨時掌握平臺和應用的運行情況,及時發現問題,保證企業業務的正常運營。
其實,很多ESB、SOA產品都提供管理和監控的功能,比如TIBCO Administrator和Service Performance Management等等,這些產品能除了能夠進行集成應用的部署、啟動等操作之外,也可以進行應用狀態的監控,但是這些功能對于企業應用集成平臺來說還遠遠不夠,尤其是對那些采用分布式應用集成平臺的大型企業,比如我們的客戶。
我建議企業應用集成平臺管理監控系統需要包括如下基本功能:
服務信息維護與管理
提到基于SOA的應用集成平臺就不能沒有服務,而且在實際的實施中,服務的形式也多種多樣,除了常用的Web Service,還有其他各種技術(比如JMS)接口和各類適配器接口。為了能夠充分發揮這些服務的作用,提高服務的重用性,就需要對這些服務進行維護和管理,功能包括:
服務基本信息維護:包括服務功能、位置、類型、輸入/輸出參數、調用方法說明等等,使用戶在需要調用某種功能的服務時,能夠快速的查找服務資源,便于應用系統的開發。
服務訪問管理:管理和維護服務的訪問者信息,以便管理人員能夠了解服務的應用范圍和使用情況,并對新增加的訪未者(應用系統)設置審批流程,防止服務訪問的隨意性和不可控性。
服務變更管理:記錄因為應用系統需求變更產生的服務版本的變更,并對訂閱該服務用戶及應用系統發布變更通知,便于服務調用方及時進行更新。
平臺監控:
應用集成平臺通常都會基于一種或者多種產品平臺進行搭建,這些平臺運行是否正常,決定了整個應用集成平臺運行的穩定。雖然很多產品本身自帶了監控工具,但是這些監控工具提供的功能往往還不能滿足用戶的一些個性化得需求,尤其是針對一些大型的客戶采用多種平臺產品,進行分布式部署的時候。如果能對這些平臺產品進行統一的監控和管理,將會大大提高應用集成平臺的可靠性。用戶可以使用產品提供的API,比如TIBCO Hawk API來定制化開發自己的監控平臺產品。平臺監控的功能包括:
平臺資源監控:比如服務器的CPU占用率、內存占用率、磁盤空間等等的監控。
平臺進程的監控:監控平臺是否運行正常,有沒有意外停機之類。
報警:在平臺出現異常時進行報警,比如向管理員發送短信提醒等。
集成應用管理與監控:
集成應用是企業應用集成平臺的核心,是真正幫助企業實現集成業務的地方。集成應用的管理與監控既能夠幫助平臺的運維人員掌握平臺的運行情況,也能夠為業務用戶對業務的運作情況提供參考依據。功能包括:
應用運行統計:記錄集成應用的運行情況,比如某一服務接口每天進行的交易數量,成功記錄數、失敗記錄數等等。
應用異常報警:針對失敗記錄過多的應用進行報警處理,通知管理員及時查看失敗原因。
應用日志管理:管理集成應用中的接口日志,運行日志,異常日志等等。
業務沖正處理:針對失敗的業務,管理和設置他們的沖正處理流程,保證業務運行的正確性。