基于UDP心跳监测及邮件提醒功能的看门狗实现
1. 背景
在服务器应用程序中,为了能够及时检测到服务器程序崩溃,并重新启动服务器程序,所以,我们需要实现一个监测程序,持续检测服务器程序的运行状态。
2. 思路
在服务器程序中,建立一个基于UDP的线程,持续向检测程序发送“心跳包”,以保证检测程序能够实时获取被检测的应用的信息。
3. 代码模块简介
3.1 多字节、宽字节处理模块
实现多字节、宽字节相关的转换处理,特别是处理中文时,需要用到该模块
3.2 基于SSL的SMTP协议模块
实现简化版本的SMTP协议,当然,可以继续扩充,实现抄送、密送等功能
3.3 UDP监测服务器模块
实现被监测应用管理和重新启动以及邮件提醒功能
3.4 UDP客户端模块
实现基于UDP的心跳包发送线程创建、退出等功能
3.5 代码:
请发送邮件至[email protected](主题:看门狗程序)
4. 实现效果:
4.1 应用监视效果:
4.2 邮件提醒效果:
5. 注意:
如果需要读取文件时,需要看门狗应用程序需要与被检测的应用程序在相同文件夹下面(也可以修改源代码进行改进)