1.基于看门狗技术的智能变电站监控服务控制台实现方法,包括如下步骤:
步骤1:根据变电站后台监控系统的启动要求配置需运行的子服务进程管理文件,该子服务进程管理文件具体包括以下信息:
(1)子服务进程数量,服务控制台所要启动的子服务进程数;
(2)子服务进程名称,服务控制台在启动时根据子服务进程名称在操作系统中创建对应的共享内存;
(3)子服务进程启动时间,即服务控制台在启动该子服务进程时的最长启动时间,如在规定的时间内未成功启动则服务控制台将杀死该子服务进程;
(4)子服务进程看门狗时间,即服务控制台在等待该子服务进程向其发送服务活动数据时的最长等待时间;
步骤2:服务控制台启动子服务进程;
步骤2-1:服务控制台读取子服务进程管理文件,获取需要监控的子服务进程数量;
步骤2-2:服务控制台读取子服务进程管理文件中各子服务进程名称、子服务进程启动时间、子服务进程看门狗时间,初始化子服务进程管理器;
步骤2-3:子服务进程管理器创建监视子服务进程的线程,记录各子服务进程的ID、启动时间、看门狗时间,并建立内存处理对象,针对各子服务进程建立事件管理器,子服务进程启动完成;
步骤2-4:如果启动子服务进程不成功,则返回步骤2,否则执行步骤3;
步骤3:子服务进程启动其子线程;
步骤3-1:子服务进程建立与该子服务进程的事件管理器的通信,并初始化实时内存,同时初始化其子线程管理器及看门狗时间;
步骤3-2:子服务进程的子线程向其子线程管理器注册,将子线程的活动事件交由子线程管理器进行统一管理;
步骤3-3:子服务进程的子线程启动,子线程在运行时发送活动事件通知其子线程管理器,子线程管理器根据每个子线程的活动事件监视每个子线程的活动;
步骤4:服务控制台监视子服务进程;
步骤4-1:子服务进程在运行时将本子服务进程各子线程的运行情况通知到服务控制台的子服务进程管理器的事件管理器,同时写入本子服务进程的活动数据;
步骤4-2:服务控制台的子服务进程管理器实时获取所监控的子服务进程的活动数据,判断子服务进程是否运行正常;
步骤4-3:如果子服务进程运行不正常,即在设定时间内未收到子服务进程的活动数据,子服务进程管理器认定该子服务进程已经程序出错或者程序崩溃,服务控制台杀死该子服务进程,并返回步骤2重新启动该子服务进程;
如果子服务进程运行正常,返回步骤3,同时,服务控制台通知服务控制台界面显示子服务进程的实时状态。