国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Socket網(wǎng)絡編程的服務器遠程監(jiān)控系統(tǒng)的實現(xiàn)

2015-06-28 15:41呂曉軍程清波劉小燕
鐵路計算機應用 2015年1期
關鍵詞:服務器端命令客戶端

詹 璇,呂曉軍,程清波,劉小燕,李 明

(中國鐵道科學研究院 電子計算技術研究所,北京 100081)

基于Socket網(wǎng)絡編程的服務器遠程監(jiān)控系統(tǒng)的實現(xiàn)

詹 璇,呂曉軍,程清波,劉小燕,李 明

(中國鐵道科學研究院 電子計算技術研究所,北京 100081)

本文基于TCP/IP協(xié)議,利用Socket網(wǎng)絡編程接口技術,在客戶端/服務器模式下,設計了遠程服務器監(jiān)控系統(tǒng),實現(xiàn)了對服務器性能的監(jiān)測和對服務器的遠程控制,最后給出了系統(tǒng)的運行結果。

TCP/IP;Socket;遠程監(jiān)控;服務器

隨著計算機應用的普及和現(xiàn)代信息技術的快速發(fā)展,應用服務器在計算機應用的各個領域起著至關重要的作用,應用服務器的安全與工業(yè)控制系統(tǒng)的運行密切相關。應用服務器是實現(xiàn)中間層的方式,為工業(yè)控制系統(tǒng)提供一個高效、可靠的運行平臺,應用服務器實現(xiàn)了客戶端的業(yè)務邏輯和基礎服務,如數(shù)據(jù)訪問、負載均衡、事務控制、安全機制和失效恢復等服務。因此,有必要對應用服務器的性能等各方面進行監(jiān)控。另外,對其工作狀況進行遠程監(jiān)測和控制,不僅可以方便設備管理者隨時了解設備的工作狀態(tài),設備出現(xiàn)異常時主動報警,便于及時維修,而且還可以拓寬設備的服務范圍,提高工作性能,延長使用壽命。

1 服務器遠程監(jiān)控系統(tǒng)的組成和架構

服務器遠程監(jiān)控系統(tǒng)包括對服務器的遠程監(jiān)測、服務器遠程控制和服務管理。其中,服務器遠程監(jiān)測主要是對服務器的CPU、內(nèi)存、網(wǎng)絡數(shù)據(jù)包進行實時監(jiān)測,遠程控制是對服務器的進程、系統(tǒng)等進行遠程控制,服務管理是監(jiān)測服務中間件運行狀態(tài)和對服務中間件進行遠程操作。如圖1所示。

圖1 服務器遠程監(jiān)控系統(tǒng)的組成

服務器遠程監(jiān)控系統(tǒng)是一個 C/S 模式的軟件,在服務器上安裝 ServerSpy.exe 后主動連接客戶端,可以支持多臺客戶端進行監(jiān)控。如圖2所示。

圖2 服務器遠程監(jiān)控系統(tǒng)架構圖

2 服務器遠程監(jiān)控系統(tǒng)設計

2.1 通信模式設計

服務器端和客戶端之間的網(wǎng)絡通信是實現(xiàn)各種功能的前提,客戶端發(fā)送指令,服務端接收指令并響應。本系統(tǒng)是在 Delphi7 環(huán)境下開發(fā)而成,Delphi是建立在原來的 Windows Socket庫函數(shù)的基礎上,并進行了一系列的包裝,對相關的功能進行了封裝,從而使編程變得更加簡單。

服務器端和客戶端的網(wǎng)絡通信利用 Delphi的INDY(Internet Direct)組件,INDY 是一套開放源代碼的 Internet控件集,支持大部分流行的 Internet協(xié) 議, 包 括 TCP、UDP、DNS、ICMP 等。 本 系統(tǒng)主要用到了 INDY 的 idTCPServer和 idTCPClient兩個組件。idTCPClient組件封裝一個完整的 TCP 客戶端程序,支持 Socket。使用 TIdTCPClient組件要設置它的 IP 和 Port屬性,然后調用 Connect方法。idTCPServer組件實現(xiàn)了一個多線程的服務端,它使用一個或者多個線程來接收客戶端的連接,并聯(lián)合idThreadMgr分配專門的線程來處理每一個客戶端和服務器的連接。在線程中維持一個激活 ThreadClass實例的列表。idTCPServer的工作原理如圖 3 所示。

圖3 idTCPServer的工作原理

因為 INDY 組件是基于 Socket阻塞工作模式,阻塞套接字調用在完成工作之后才返回,如果在程序主線程中進行此類調用,應用程序將不能正常處理用戶界面消息,從而造成了用戶界面的“死鎖”。

在客戶端添加一個 TidAntiFreeze 組件就可以避免用戶界面“死鎖”的發(fā)生,TIdAntiFreeze 在INDY 內(nèi) 部 定時中 斷 對棧的 調 用, 并在中 斷 期間調用 Application.ProcessMessages 方法處理消息,而 外 部 的 INDY 調 用 繼 續(xù) 保 存 阻 塞 狀 態(tài), 就 好 像TIdAntiFreeze 對象不存在一樣。這樣界面“死鎖”的問題就可以得到完滿的解決。

在客戶端添加 idTCPClient組件,在服務器端添加 idTCPServer組件,它們之間就形成了 TCP 通信,具體客戶端和服務器端之間的通信如圖4所示。

圖4 客戶端和服務器端的通信

2.2 客戶端與服務器端程序設計

客戶端在執(zhí)行每個監(jiān)測或者控制請求時,定義一個字符串鏈表,將請求的每個命令加入鏈表中,并在鏈表中逐個編號,例如:查看進程的命令編號為22,關閉某個可疑進程的命令編號為 23。然后發(fā)送命令,將客戶端地址和發(fā)送命令編號作為參數(shù)發(fā)送給服務器端,服務器端來執(zhí)行相應的操作。

服務器端在接收到客戶端發(fā)送來的命令時,首先進行服務探測,即判斷是哪個客戶端發(fā)送來的消息,識別客戶端發(fā)送來的主機 IP 地址和端口號,與它建立建立,開始線程的執(zhí)行。在線程執(zhí)行時,先判斷命令號,即客戶端發(fā)送的命令編號,然后執(zhí)行相應的操作。

2.3 運行結果

運行結果如下圖所示。下面展示了服務器的部分監(jiān)測結果,圖5為CPU使用情況,圖6為內(nèi)存使用情況,圖7為進程管理情況,圖8為服務管理。

3 結束語

本文介紹了在客戶端/服務器模式下的遠程服務器監(jiān)控系統(tǒng),該系統(tǒng)基于 TCP/IP 協(xié)議,利用 Socket網(wǎng)絡編程接口技術,實現(xiàn)了對服務器性能的監(jiān)測和對服務器的遠程控制,詳細介紹了服務器與客戶端

圖5 CPU使用情況

圖6 內(nèi)存使用情況

圖7 進程管理

通信模式設計,客戶端與服務器端設計,最后給出了運行結果。

[1] 蔣東興,林鄂華 . Windows Sockets 網(wǎng)絡程序設計大全 [M].北京 :清華大學出版社,1999.

[2] RICHARD S W. TCP/IP 詳解,卷 1 :協(xié)議范建華 [M].胥光輝,張 濤,等,譯 . 北京 :機械工業(yè)出版社,2000.

[3] 李存斌, 汪 兵 . Delphi深度編程及項目應用開發(fā) [M]. 北京 :中國水利水電出版社,2002 :180-188.

[4] 康鴻儒,陳 虹,曹 衛(wèi) .基于 Internet的遠程操作技術研究 [J].工業(yè)控制計算機,2002,15(1):25-29.

[5] 楊志紅,徐 襲,江漢紅 ,等 .基于嵌入式肉絡技術構建遠程監(jiān)測系統(tǒng) [J].測控技術,2002,21(8):47-48.

[6] 李小海,王旭永 . 基于 WWW 的機器人遠程控制的關鍵技術及典型實現(xiàn) [J].工業(yè)控制計算機,2000,13(2):51-53.

[7] 王曉峰,吳平東,等 . 基于因特網(wǎng)的遠程控制系統(tǒng)控制算法的研究 [J]. 計算機應用研究,2003,20(4):141-143.

[8] 顧洪軍,張 佐,吳秋峰 . 網(wǎng)絡控制系統(tǒng)的實時特性分析及數(shù)據(jù)傳輸技術 [J]. 計算機工程與應用,2001(6):38-41.

責任編輯 徐侃春

Implementation of Server Remote Monitoring System based on Socket network programming

ZHAN Xuan, LV Xiaojun, CHENG Qingbo, LIU Xiaoyan, LI Ming
( Institute of Computing Technologies, China Academy of Railway Sciences, Beijing 100081, China )

Based on the TCP / IP protocol, Socket network programming interface technology was used in this paper. The Remote Server Monitoring System was designed in C/S mode, thus the performance monitoring and server controlling were implemented. The operation result of the System was described in this paper.

TCP/IP; Socket; remote monitoring; server

U29 ∶ TP39

:A

1005-8451(2015)01-0026-04

2014-07-31

詹 璇,研究實習員;呂曉軍,副研究員。

猜你喜歡
服務器端命令客戶端
只聽主人的命令
Linux環(huán)境下基于Socket的數(shù)據(jù)傳輸軟件設計
如何看待傳統(tǒng)媒體新聞客戶端的“斷舍離”?
縣級臺在突發(fā)事件報道中如何應用手機客戶端
孵化垂直頻道:新聞客戶端新策略
大樞紐 云平臺 客戶端——中央人民廣播電臺的探索之路
移防命令下達后
基于Qt的安全即時通訊軟件服務器端設計
基于Qt的網(wǎng)絡聊天軟件服務器端設計
這是人民的命令
虹口区| 阿城市| 海南省| 兴义市| 华蓥市| 宁安市| 阳山县| 保德县| 化州市| 阿尔山市| 志丹县| 乾安县| 鄱阳县| 石阡县| 营山县| 绥江县| 石河子市| 吉木萨尔县| 饶河县| 连州市| 会东县| 独山县| 安岳县| 新干县| 敦化市| 玉屏| 应城市| 东台市| 赤峰市| 雷山县| 五常市| 涟源市| 台东县| 白山市| 罗山县| 中江县| 洪洞县| 聊城市| 天柱县| 大关县| 喜德县|