您好,登錄后才能下訂單哦!
這篇文章主要介紹.NET監控技術有什么用,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
一、系統架構分析
該系統一種典型的網絡通訊應用,所以可以在系統的每個層次之間通過業務協議作為接口,協議根據業務的內容可以不斷的擴充,這樣層與層之間的耦合性低,功能相對獨立。在數據采集和數據通訊層都比較完善的時候,數據展現層的功能擴展對下面兩層的影響可以降低到最小。數據通訊的模式可以分為主動和被動的方式發送數據到監控平臺。例如有一些數據需要被監控計算機實時發送,而另一些數據是由操作員向某臺計算機發出查詢命令,然后被監控計算機執行應答。可以從功能上可以自下而上把整個系統的架構分為數據采集,數據通訊和數據展現共三個層次。
【圖 2-1】
數據采集層是服務器數據的源。主要包括對服務器運行狀態、IIS可用性與性能、MQ服務器與消息隊列、Oracle數據庫服務、自行開發的服務和服務器資源的使用情況等等軟硬件數據進行抓取。從技術上分析可以把采集的數據分為兩大類:一是被監控服務器主動發送出來的數據,這里又包含計算機的實時運行狀態和一些定制的事件。二是監控中心向被監控服務器發送的各項數據指令。
數據通訊是傳輸數據的承載體。主要是把采集到的數據準確,安全的輸送到監控中心。這里需要考慮通訊的性能,安全,以及現有的網絡結構。然后綜合這些情況選擇合適的網絡通訊模型。與采集數據的接口是業務協議。這個層面負責把協議進行解析,關鍵數據進行加密,然后傳輸數據。
數據展現層是對采集的數據進行加工、表現的地方,它是作為監控人員與機器之間的一個控制接口,所有的業務功能都最終體現到這個層面。例如:各服務器的運行信息實時顯示,遠程操作服務、權限管理、輸出報表、數據的存放以及預警功能。
.NET監控技術中數據上行流程:
數據通訊層 數據采集層 事件 狀態 數據通訊層 數據展現層 網絡環境 WMI 數據打包 協議 發送數據 接收數據 協議 數據解包 數據存取管理 數據庫 消息 實時數據顯示 消息
二、數據采集技術分析
因為服務器的操作系統是Windows Server,數據的采集就可以用WMI技術。它可以采集到幾乎所有的軟硬件數據信息。Microsoft把WMI封裝成COM接口的形式提供給開發人員使用。而在 .NET 框架中,提供了更為簡便的使用方法來查詢系統各種的信息、訂閱事件。
System.Managerment, System.Management.Instrumentation命名空間就包含了所有對WMI的操作功能。通過WMISQL語句就可以查詢和訂閱計算機的運行狀態信息。例如:
查詢某臺機器的類型創建事件,就可以用類似SQL語法的程序代碼來完成。
三、數據通信技術分析
傳輸的數據內容是由業務功能決定的,但其設計方法可以統一制定一個規范。考慮到網絡通訊程序的特點,可以用消息的形式,發送方把數據進行封裝,然后轉換成字節流,由網絡通訊層把數據發送到目的機器。目的機器接收到某段字節流后,解析之,然后轉換成對應的消息。
每一個消息都包含消息頭和消息體。由命令標識、序列號、消息長度,再加上特定的業務信息就構成了一個完整的消息。協議解析時就可以根據消息標識,選擇相應的消息處理對象,生成對應的消息實體。數據展現層再負責把消息實體持久化到數據庫中。
針對不同的消息,會有應答消息,即消息一般以成對的方式出現。比如監控方向被監控方查詢某個設備狀態,它接收到命令后,會把查詢的結果以相同的序列號為關聯,發出應答消息。這樣監控方就可以準確無誤的收到信息。.NET監控技術的好處正在于此。
消息頭格式
字段 | 長度(字節) | 類型 | 說明 |
Message Length | 4 | Integer | 消息的總長度(字節) |
Command ID | 4 | Integer | 命令ID |
Sequence Number | 12 | Integer | 序列號 |
消息體格式
字段 | 長度(字節) | 類型 | 說明 |
MessageLength | 4 | Integer | 消息的長度 |
MessageContent | Message Length | String | 消息的內容 |
Reserve | 8 | String | 保留,擴展用 |
應答格式
字段 | 長度(字節) | 類型 | 說明 |
Result | 1 | Integer | 命令是否成功執行。 0:執行成功 其它:錯誤碼 |
MessageLength | 4 | Integer | 消息的長度 |
MessageContent | Message Length | String | 消息的內容 |
Reserve | 8 | String | 保留,擴展用 |
消息ID名稱 | 消息ID取值 |
BIND | 0x1 |
BIND_RESP | 0x80000001 |
UNBIND | 0x2 |
UNBIND_RESP | 0x80000002 |
錯誤碼 | 描述 |
0 | 無錯誤 |
1 | 非法用戶名 |
2 | … |
3 | … |
以上是“.NET監控技術有什么用”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。