鄭文博
(上海船舶電子設備研究所 上海市 201108)
本文是根據企業內部實際項目進行研究,針對企業整個應用平臺中各子系統狀態信息搜集及監測而設計的監測平臺,企業整個應用平臺中子系統較多,涉及到的硬件資源也相應較多,各個子系統在處理業務時也存在信息交互和數據共享,在這樣的大環境下,如果某個子系統中軟件或硬件出現故障,對企業會產生一定的損失,對故障的排查也存在一定的困難,通過建設顯控軟件能夠實時的對各子系統的軟件和硬件性能進行監測,不僅可以及時的發現故障,也能夠在故障產生并擴大前進行預防性處理。
顯控軟件功能主要涉及到監視與顯示、心跳接收、狀態上報、遠程登錄、日志管理和身份驗證六大功能,功能結構圖如圖1所示。
1.1.1 監視與顯示
該模塊是能夠及時的獲取各個設備上報的狀態信息,通過顯控軟件進行判定分析后,將各個設備的狀態信息顯示出來,方便用戶直觀的發現問題,并解決問題。
1.1.2 心跳接收
該模塊是實時的、定時的去獲取平臺中設備的心跳信息,這些心跳信息的屬于中有心跳時間,顯控軟件能夠通過這些實時的心跳來判斷設備當前是離線還是在線。
1.1.3 狀態上報
該模塊主要將獲取到的各個設備的狀態信息以及對應的時間節點以打包的形式發送到企業信息管理中心軟件上,由管理平臺根據狀態信息進行管理。
1.1.4 日志管理
該模塊主要涉及到記錄日志和檢索日志兩部分,記錄日志是對平臺中各子系統在運行中發生的一些關鍵性的事件進行記錄,檢索日志是對已記錄的日志進行查詢,由于記錄實時進行,到現在數據庫中已經有了大量的記錄信息,這時就需要通過檢索來查詢所需要日志。
1.1.5 遠程登錄
該模塊是指通過遠程登錄的形式去對各子系統進行操作,方便及時的去處理各子系統產生的故障問題。
1.1.6 身份驗證
該模塊是對用戶的身份進行驗證操作,當管理員用戶登錄系統中時,在錄入用戶名和密碼確認后,系統通過用戶名能夠識別到管理員的權限,并為管理員提供準入和相應的操作權限,當普通用戶登錄系統中時,在錄入用戶名和密碼確認后,系統通過用戶名能夠識別到普通用戶的權限,并為普通用戶提供準入和查看的權限。
在接口分析中,主要通過外部接口和內部接口兩部分來進行分析。

圖1:顯控軟件功能結構

圖2:外部接口關系圖
1.2.1 外部接口
企業中的內網應用系統和外網應用系統是不在同一局域網中的,它們被內網和外網之間的防火墻等網絡安全設備隔開,這樣的情況下內網中的顯控軟件是無法和外網中的子系統進行通信的,只有通過數據軟件才能實現通信。也就是說,外網子系統中,還需要一個數據軟件,內網在和外網進行通信時,首先要和這個數據軟件進行連接,通過數據軟件來進行通信,該軟件是內網和外網通信的一個中介,對于內網中的子系統,顯控軟件能夠直接進行通信。顯控軟件的整個生命期都在和管理軟件、處理軟件、硬件監控軟件、規劃軟件和數據庫軟件等進行信息交互,這些交互都是通過接口進行的,交互中主要涉及到的信息包括心跳和狀態,外部接口圖如圖2所示。
1.2.2 內部接口
對于顯控軟件,除了和其他子系統進行以外,其自身內部也存在諸多的交互,在運行時,軟件中各個功能模塊間也需要進行數據交互。比如,監視與顯示模塊中,能夠及時的獲取各個設備上報的狀態信息,通過顯控軟件進行判定分析后,將各個設備的狀態信息顯示出來,并把信息提交到狀態上報模塊;心跳接收是實時的、定時的去獲取平臺中設備中帶有心跳時間的心跳信息,這些信息以及對應的時間節點以打包的形式發送到企業信息管理中心軟件上,由管理平臺根據狀態信息進行管理。監視與顯示模塊、心跳顯示模塊和狀態上報模塊分別將數據源碼信息發送至源碼顯示模塊進行顯示;心跳接收模塊中會提取時間內容,然后由判斷時間戳模塊判斷時間戳是否在標準之內;時間戳模塊將時間戳內容發送至狀態上報模塊。內部接口如圖3所示。
1.3.1 易維護性
顯控軟件的易維護性和軟件的代碼結構、代碼執行是息息相關的,在開發中,必須制定規范的軟件開發標準,并且采用當前比較成熟的軟件架構以及設計模式,在開發中對代碼的注釋率一定要達到百分之六十,這樣才能夠方便其他軟件開發人員對代碼的閱讀和修改。
1.3.2 易用性
對于顯控軟件的界面一定要簡潔和規范,在設計中,要將當前軟件開發中的主流界面風格和顯控軟件的實際業務相應風格結合在一起,在界面對用戶有親和力的基礎上實現操作簡單方便,完成開發后要編寫操作手冊,對操作手冊的編寫一定要語句通順,邏輯清晰。
1.3.3 準確性
數據準確性是顯控軟件的核心的技術指標,只有數據準確了,系統才能實現其自身的價值,因此,在開發中,一定要把握好系統的數據準確性,開發過程中,完成一個模塊的代碼,就進行模塊的單元測試,也就是黑盒測試,整個系統完成后,根據軟件的業務流程和相應的數據信息進行整體測試,也就是白盒測試。
1.3.4 穩定性
穩定性是顯控軟件的重要性能,系統的穩定是保障顯控軟件運行的重要條件,主要體現在隨著并行用戶的數量增多,系統的負載是否會過大,造成軟件的反應遲鈍或異常。
因為企業各子系統的數據交互一般情況都是在內網進行,也就是企業局域網中進行數據傳輸,并且各個子系統和顯控軟件有著非常頻繁的數據交互,涉及到的信息傳輸比較多,這種情況下,我們要通過UDP 協議來保障數據交互過程中的高效以及穩定。
顯控軟件是企業信息平臺的一個重要子系統,它通過對信息平臺中各子系統及設備的狀態進行實時監測,并將監測到的狀態信息進行顯示,這樣用戶就可能直觀的看到整個平臺的狀態,并把這些狀態信息以打包的方式提交到管理中心,由管理中心根據狀態情況進行及時處理。根據分析結果,我們將顯控軟件功能模塊設計為六大部分。
(1)監視與顯示模塊:接收狀態信息,解析信息內容,解析出分系統名稱,和狀態內容,不同的分系統顯示到界面不同的位置,并將這些信息存入數據庫。
(2)心跳接收模塊:B 系統下其他6 個軟件定時2s 一次上報心跳信息,本軟件根據是否接收到某軟件的心跳判斷出該軟件是否在線,通過解析出時間戳,判斷出該軟件的時間是否符合標準。
(3)狀態上報模塊:正常情況下將接收到的狀態信息30s 一次打包上報給B 系統下的某管理軟件,如果狀態信息出現突變,就立馬上報。
(4)遠程登錄模塊:界面調用遠程登錄接口,填寫遠程登錄系統的用戶名和密碼,如果用戶名和密碼正確就可以遠程登錄,方便查看各系統的具體情況。
(5)日志管理模塊:在綜合顯控軟件的運行過程中,實時記錄軟件運行過程中需要記錄的日志信息,按天生成日志文件,記錄日志的時間和信息,同時可以通過時間,檢索日志信息,在界面中進行顯示,供用戶查看。

圖3:內部接口關系圖
(6)身份驗證模塊:用戶對軟件擁有查看權限,一旦身份驗證通過,用戶就擁有操作權限,用戶名和密碼正確就會驗證通過。
顯控軟件是信息平臺的一個監測及管控平臺,它的建設能夠大大提高企業信息大平臺的部件安全性和穩定性,在顯控平臺中存在一些問題,比如軟件的接口問題和數據處理問題,這些問題仍然需要去研究,去解決。