何映軍
(云南電網有限責任公司信息中心,云南昆明,650206)
應用系統業務交易若想實現用戶體驗可視化,就需要借助APM技術進行二次性能開發,APM平臺提供的API接口能夠為系統平臺收集所需信息,并將收集到的數據信息及時推送過來,利用Kafka集群模塊實現數據信息的及時存儲。存儲信息在Storm集群的計算、統計下得到所需展示結果,并將處理結果及時上傳至關系數據庫。用戶顯示界面通過定期刷新操作從關系數據庫中提取并顯示計算出的數據信息。用戶若是想要查看詳細數據信息,可以在分布式文件系統中進行檢索查找。系統監控過程需要將人員關系與業務流程進行內部結合,同時還需做好外部系統的集成工作。用戶體驗可視化系統需要建立模塊化的分層邏輯結構,就技術層面而言需要涵蓋數據采集、數據處理、數據存儲及數據展示幾項功能。
伴隨科技的發展進步,APM系統得到了完善深化,其探針數量呈現逐漸增多的趨勢。為了適應全量數據的使用要求,APM系統的探針采集數據量及并發量也呈現逐漸增多的趨勢,但是如何處理好高并發數據關系,成為研究界需要重點解決的問題。本系統的數據采集技術主要建立在分布式計算框架Storm的基礎上,通過對采集數據的系統處理,有效降低龐大數據信息給單臺服務器帶來的壓力。通過采集系統獲得的數據信息借助Kafka消息中間件實現及時存儲的目的,以便于為用戶操作軌跡識別及用戶標識抓取提供數據支持。
消息中間件系統主要使用可靠的消息傳遞機制來實現平臺無關數據的分析處理。消息中間件技術適用于需要可靠數據傳輸的分布式環境,并且可以實現不同對象之間的消息傳遞與行為激活操作。具體流程為:發送者將數據消息發送至消息服務器,消息服務器將數據消息存放在某個隊列中,并選取合適時機將上述數據消息轉發給接收者。消息中間件技術之所以能夠穿梭于各種平臺通信系統,主要是因為該技術具有屏蔽各種平臺和協議的作用,能夠實現各種應用之間的協調管理。
可視化拓展技術主要涵蓋了數據可視化及界面可定制化兩方面內容,其中信息可視化技術具有將結構、非結構數據轉換成適當可視化圖表的作用,從而實現將隱藏數據信息直接展現在用戶面前的目的。數據可視化圖表種類繁多,功能各異,可以滿足不同系統的展示需求。界面可定制化技術能夠實現當前報表功能的優化處理,集中整合當前各種數據展示圖表,有效提高用戶關注度,同時還能滿足不同用戶的報表界面自定義設置要求。報表界面自定義設置主要涵蓋配置界面展示模塊內容定義及配置模塊展示數據定義兩方面內容。
對于普通監控數據而言,設計人員可以設定每幾分鐘刷新一次的操作,但是這個操作無法滿足異常狀況的基本需要,還需將數據信息實時發送到終端界面,以便運維人員能夠及時發現、解決問題。使用HTML5定義的WebSocket協議,可以節省服務器資源和帶寬,實現實時推送的目的。WebSocket協議本質上是一個TCP協議,由通信協議和編程API組成,從而賦予瀏覽器實時通信的能力。客戶端和服務器通過這個連接通道自由地傳遞信息,并且這個連接通道會一直持續到某一方主動關閉連接為止。
監控數據作為寶貴的數據資產,是衡量系統運行健康狀況的最直觀指標,通過對監控數據的展示、運算與分析,有助于及時發現系統運行薄弱環節、性能瓶頸及系統漏洞。實時監控數據指的是正在運行的系統、服務器某一時刻的運行狀態信息,一旦系統存在異常現象,可視化系統就能發現實時異常數據并對這個異常信號做出適宜響應。緩存數據指的是無需長久保存的數據,可能是某些數據運算過程中產生的中間數據,具有數據周期較短的特點。在數據采集平臺中,實時數據和緩存數據由內存數據庫進行維護管理的。當采集到的數據能夠滿足運算、分析要求時,實時處理模塊就會對相應數據進行運算分析,并將分析結果放到前臺進行展示,同時發送相應的實時報警信息。
功能建模技術主要用于對APM采集數據的分析整理,APM能對一個或多個應用過程進行數據信息采集,從而實現用戶標識或時間戳的抓起操作。設計師可以在業務系統中建立一個測試帳號,并將操作處理間隔設定為2min,從而確保自動識別操作的準確性、及時性。具體操作流程為:設計人員將業務系統全部功能錄入監控平臺之中,并將可供識別到的應用過程與人工方式進行有機結合,以便于在某組應用過程被調用的時候,準確找出所被調用功能的具體信息,進而實現業務監控的目的。
隨著我國電網公司對于監控業務需求的不斷升級,地區電網在滿足日常監控需求的前提下,還需具備用戶操作軌跡自動識別功能。目前的應用系統具備用戶標識抓取功能,能夠及時獲取各條數據的時間戳,幫助服務器端明確特定用戶在某個時間節點進行了哪項應用操作,進而完成功能建模及數據識別工作。最后通過對這些應用過程與系統功能的整合研究,有助于服務器端實現對用戶操作軌跡的系統識別與記錄。
全棧溯源用于準確定位復雜的應用程序環境,并且可以有效地確定網絡、移動設備、瀏覽器及服務器上的性能問題出現位置及原因。同時具有降低跨部門排障溝通成本,實現完整業務調用鏈的實時跟蹤。全棧溯源技術能夠發揮如下功能:從網絡到服務端的性能溯源;從瀏覽器端到服務端的性能溯源;跨服務器、跨語言、跨應用程序的性能追蹤。全棧溯源技術的合理運用能夠完成端到端的整體監控,一旦發生故障,服務器端能夠根據監控數據,分析研究具體問題出現區域,甚至能定位具體的服務器代碼。