首页 > 代码库 > 设备监测模块实现思路
设备监测模块实现思路
经过一个月的努力,FZAQ的设备监测模块终于完工。由于这块由我负责设计、实现、测试,所以对这块的实现过程比较了解,在此把实现思路和大家分享分享,希望能帮助大家进步。
首先需要准备二台服务器(每台至少有三个网卡)、一台笔记本。一台服务器当做数据库服务器1,另一台当做数据库服务器2,笔记本当做显示终端。
配置IP,数据库服务器1配置本地连接 1IP为172.22.51.171,配置本地连接 2IP为172.22.51.172,配置本地连接 3IP为10.0.0.1。本地连接 1、2用于供外部程序访问本机的数据库程序,本地连接 3为心跳端口,用于监测数据库服务器2的状态。数据库服务器2配置本地连接 1IP为172.22.51.173,配置本地连接 2IP为172.22.51.174,配置本地连接 3 IP为10.0.0.2。
在两台数据库服务器上分别运行守护进程程序、ESB程序、C++程序、服务器信息获取程序。守护进程用于监测对方数据库服务器的运行状态,开始设置数据库服务器1为主机、数据库服务器2为备机。如果数据库服务器1出现单网断网,数据库服务器1自己将故障情况写入到数据库,如果数据库服务器1出现双网断网,数据库服务器1无法向数据库写入记录,此时数据库服务器1上的守护进程向数据库服务器2上的守护进程发送故障信息,数据库服务器2上的守护进程向本机上的ESB发送WorkState为2(2代表双网断网、3代表设备断电),ESB把数据库服务器1的故障信息入库,同时将消息推送到终端看护程序,终端看护程序接收到ESB推送的故障信息,修改终端的WCF地址,重启终端程序。
在数据库服务器的显示页面,用Timer时时从数据库刷新设备的运行状态,如果设备存在但未运行,设备颜色为灰色;如果设备单网断网,设备颜色为黄色;如果设备断电或双网断网,设备颜色为红色。
测试方法:分别启动数据库服务器1和数据库服务器2上的守护进程、ESB、C++、服务器信息获取模块,数据库服务器1充当主机,数据库服务器2为备机。
测试结果:断开数据库服务器1的一根网线,显示页面的数据库服务器1图标变为黄色,插上后显示为绿色。断开数据库服务器1的两根网线,数据库服务器1上的守护进程显示由主到备切换,数据库服务器2上的守护进程显示由备到主的切换,显示页面的数据库服务器1图标变为红色。
设备监测模块实现思路