用于监控Linux系统中Web服务的软件看门狗实现方法技术方案

技术编号:19341488 阅读:28 留言:0更新日期:2018-11-07 13:39
本发明专利技术涉及一种用于监控Linux系统中Web服务的软件看门狗实现方法,其特征在于:建立一个用于监控和管理Linux系统中Web服务的软件看门狗进程,首先启动Web服务,启动看门狗进程,看门狗进程通过固定时间间隔监控Web服务和相关进程的运行情况,根据是否捕捉到异常信号,进而判断故障层级,在发生软件故障时,快速定位相关故障进程,并依据故障的判断原因及严重程度,对Web服务相关进程进行相关重启、恢复工作,系统级错误进行对操作系统的重启指令;从而实现Linux系统中Web服务的无人监控下,自动故障恢复和还原。与现有技术相比,本发明专利技术的优点在于能保障在无人监控下,Web服务的稳定性和高可用性。

Software watchdog implementation for monitoring Web services in Linux systems

The invention relates to a software watchdog implementation method for monitoring Web services in Linux system, which is characterized by: establishing a software watchdog process for monitoring and managing Web services in Linux system, first starting Web services, starting watchdog processes, and watchdog processes monitoring Web services and phases at fixed intervals. According to whether or not abnormal signals are captured, the fault level can be judged. When a software failure occurs, the related fault process can be located quickly. According to the cause and severity of the fault, the related process of Web service can be restarted and restored, and the system-level error can be made to the operating system. Restart instructions; thus realize automatic failure recovery and restore under the unattended monitoring of Web services in Linux system. Compared with the prior art, the advantages of the present invention are that the stability and high availability of Web services can be guaranteed without monitoring.

【技术实现步骤摘要】
用于监控Linux系统中Web服务的软件看门狗实现方法
本专利技术涉及一种用于监控Linux系统中Web应用的软件看门狗实现方法。
技术介绍
随着互联网技术在各行各业中的发展,基于互联网的信息化建设已经起到了举足轻重的作用,而Web网站是基于互联网信息化建设的一个重要内容。在常规的Web网站建设中,考虑到Linux系统的跨平台的硬件支持、丰富的软件支持、多用户多任务、可靠的安全性、良好的稳定性和完善的网络功能等优势,众多Web网站的开发者,将Linux系统作为首选操作系统。而基于Linux操作系统、Nginx网络服务器、MySQL数据库、PHP编程语言的架构,即LNMP架构,是当前Linux系统中Web网站架构的主要模式;还有LMPA构架(基于Linux操作系统、MySQL数据库、PHP编程语言的架构和Apache服务器的构架)、LNMPA构架(基于Linux操作系统、Nginx网络服务器、MySQL数据库、PHP编程语言的架构和Apache服务器的构架),都是Linux系统中Web网站的常用架构。另一方面,Web网站或者说基于Web模式的信息化应用,一般来说都是需要提供7天X24小时不间断服务,对系统运维的实时性要求较高,在发生软件故障的时候,不可能通过人工监控的方式来保障软件系统的稳定性和系统恢复。
技术实现思路
本专利技术所要解决的技术问题是针对上述现有技术提供一种用于Linux系统中Web服务的软件看门狗实现方法,保障在无人监控下,Web服务的稳定性和高可用性。本专利技术解决上述技术问题所采用的技术方案为:一种用于监控Linux系统中Web服务的软件看门狗实现方法,其特征在于:建立一个用于监控和管理Linux系统中Web服务的软件看门狗进程,软件看门狗进程通过如下步骤对Linux系统中Web服务进行监控和管理:步骤(1)、Web服务和软件看门狗进程初始化:Linux系统中与Web服务对应的进程启动后,获取所有启动进程的PID,进程的PID即为进程的身份标识;随后,启动软件看门狗进程;步骤(2)、软件看门狗进程获取Linux系统中当前运行的所有与Web服务相关的进程PID,再与步骤(1)中获取的进程的PID进行比较,如果两者完全相同,则软件看门狗进程输出“无异常”信号,并转入步骤(3);如果通过比较发现,Linux系统当前运行的与Web服务相关的所有进程的PID与步骤(1)中获取的进程的PID不一致,则软件看门狗进程输出“异常”信号,并转入步骤(4);步骤(3)、软件看门狗进程睡眠预先设定的时间间隔T,然后返回步骤(2);步骤(4)、如果当前运行的所有与Web服务相关的进程PID与步骤(1)中获取的进程PID之间仅有一个进程PID不一致,进入进程层级故障处理流程后返回步骤(1),同时记录进入进程层级故障处理流程的次数retry1;如果当前运行的所有与Web服务相关的进程PID与步骤(1)中获取的进程PID之间有N个进程PID不一致,N大于等于2,或记录的进入进程层级故障处理流程的次数retry1达到预先设定的第一阈值,进入服务层级故障处理流程后返回步骤(1),同时记录进入服务层级故障处理流程的次数retry2;当软件看门狗进程检测到Linux系统出现故障或发现记录的进入服务层级故障处理流程的次数retry2达到预先设定的第二阈值,则进入系统层级故障处理流程;其中,进程层级故障处理流程为:杀死Web服务相应的进程,并重启该Web服务;服务层级故障处理流程为:杀死所有Web服务的进程,并重启所有Web服务;系统层级故障处理流程为:重启Linux系统;当所有Linux系统中Web应用的进程恢复正常后,软件看门狗进程将进入进程层级故障处理流程的次数retry1和进入服务层级故障处理流程的次数retry2进行复位。所述Linux系统中Web服务包括多个不同的子服务,如数据库子服务,网络服务器子服务,核心应用程序子服务,不同子服务启动后,会出现一个或多个不同的进程:此时,进程层级故障处理流程为:杀死Web服务相应子服务的进程,并重启该子服务;服务层级故障处理流程为:杀死与Web服务相关的所有子服务的进程,并重启所有子服务。与现有技术相比,本专利技术的优点在于:通过对整个Linux系统的Web服务的进程进行监控,实时发现服务或系统相关问题,快速定位可能出现故障的服务的问题层级,并迅速作出反应,进行相关进程的恢复或系统重启,从而保障在无人监控下,Web服务的稳定性和高可用性。附图说明图1为本专利技术实施例中本专利技术实施例中用于监控Linux系统中Web服务的软件看门狗实现方法的流程图。具体实施方式以下结合附图实施例对本专利技术作进一步详细描述。本专利技术提供了一种用于监控Linux系统中Web服务的软件看门狗实现方法,Linux系统中Web服务包括多个子服务,如数据库子服务,网络服务器子服务,核心应用程序子服务等,先建立一个用于监控和管理Linux系统及其中Web服务的软件看门狗进程,软件看门狗进程通过如下步骤对Linux系统中Web服务进行监控和管理:步骤(1)、Web服务和软件看门狗进程初始化:Linux系统中与Web服务对应的进程启动后,获取所有启动进程的PID,进程的PID即为进程的身份标识;随后,启动软件看门狗进程;步骤(2)、软件看门狗进程获取Linux系统中当前运行的所有与Web服务相关的进程PID,再与步骤(1)中获取的进程的PID进行比较,如果两者完全相同,则软件看门狗进程输出“无异常”信号,并转入步骤(3);如果通过比较发现,Linux系统当前运行的与Web服务相关的所有进程的PID与步骤(1)中获取的进程的PID不一致,则软件看门狗进程输出“异常”信号,并转入步骤(4);步骤(3)、软件看门狗进程睡眠预先设定的时间间隔T,然后返回步骤(2);步骤(4)、如果当前运行的所有与Web服务相关的进程PID与步骤(1)中获取的进程PID之间仅有一个进程PID不一致,进入进程层级故障处理流程后返回步骤(1),同时记录进入进程层级故障处理流程的次数retry1;如果当前运行的所有与Web服务相关的进程PID与步骤(1)中获取的进程PID之间有N个进程PID不一致,N大于等于2,或记录的进入进程层级故障处理流程的次数retry1达到预先设定的第一阈值,进入服务层级故障处理流程后返回步骤(1),同时记录进入服务层级故障处理流程的次数retry2;当软件看门狗进程检测到Linux系统出现故障或发现记录的进入服务层级故障处理流程的次数retry2达到预先设定的第二阈值,则进入系统层级故障处理流程;Linux系统出现的系统级故障包括启动故障、中断故障、函数库故障、网络连接故障等等;其中,进程层级故障处理流程为:杀死Web服务相应子服务的进程,并重启该子服务;服务层级故障处理流程为:杀死与Web服务相关的所有子服务的进程,并重启所有子服务;系统层级故障处理流程为:重启Linux系统;当所有Linux系统中Web应用的进程恢复正常后,软件看门狗进程将进入进程层级故障处理流程的次数retry1和进入服务层级故障处理流程的次数retry2进行复位。本专利技术的首先启动Web服务,启动看门狗进程,看门狗进程通过固定时间间隔监控Web服务和相关进本文档来自技高网...

【技术保护点】
1.一种用于监控Linux系统中Web服务的软件看门狗实现方法,其特征在于:建立一个用于监控和管理Linux系统及其Web服务的软件看门狗进程,软件看门狗进程通过如下步骤对Linux系统中Web服务进行监控和管理:步骤(1)、Web服务和软件看门狗进程初始化:Linux系统中与Web服务对应的进程启动后,获取所有启动进程的PID,进程的PID即为进程的身份标识;随后,启动软件看门狗进程;步骤(2)、软件看门狗进程获取Linux系统中当前运行的所有与Web服务相关的进程PID,再与步骤(1)中获取的进程的PID进行比较,如果两者完全相同,则软件看门狗进程输出“无异常”信号,并转入步骤(3);如果通过比较发现,Linux系统当前运行的与Web服务相关的所有进程的PID与步骤(1)中获取的进程的PID不一致,则软件看门狗进程输出“异常”信号,并转入步骤(4);步骤(3)、软件看门狗进程睡眠预先设定的时间间隔T,然后返回步骤(2);步骤(4)、如果当前运行的所有与Web服务相关的进程PID与步骤(1)中获取的进程PID之间仅有一个进程PID不一致,进入进程层级故障处理流程后返回步骤(1),同时记录进入进程层级故障处理流程的次数retry1;如果当前运行的所有与Web服务相关的进程PID与步骤(1)中获取的进程PID之间有N个进程PID不一致,N大于等于2,或记录的进入进程层级故障处理流程的次数retry1达到预先设定的第一阈值,进入服务层级故障处理流程后返回步骤(1),同时记录进入服务层级故障处理流程的次数retry2;当软件看门狗进程检测到Linux系统出现故障或发现记录的进入服务层级故障处理流程的次数retry2达到预先设定的第二阈值,则进入系统层级故障处理流程;其中,进程层级故障处理流程为:杀死Web服务相应的进程,并重启该Web服务;服务层级故障处理流程为:杀死所有Web服务的进程,并重启所有Web服务;系统层级故障处理流程为:重启Linux系统;当所有Linux系统中Web应用的进程恢复正常后,软件看门狗进程将进入进程层级故障处理流程的次数retry1和进入服务层级故障处理流程的次数retry2进行复位。...

【技术特征摘要】
1.一种用于监控Linux系统中Web服务的软件看门狗实现方法,其特征在于:建立一个用于监控和管理Linux系统及其Web服务的软件看门狗进程,软件看门狗进程通过如下步骤对Linux系统中Web服务进行监控和管理:步骤(1)、Web服务和软件看门狗进程初始化:Linux系统中与Web服务对应的进程启动后,获取所有启动进程的PID,进程的PID即为进程的身份标识;随后,启动软件看门狗进程;步骤(2)、软件看门狗进程获取Linux系统中当前运行的所有与Web服务相关的进程PID,再与步骤(1)中获取的进程的PID进行比较,如果两者完全相同,则软件看门狗进程输出“无异常”信号,并转入步骤(3);如果通过比较发现,Linux系统当前运行的与Web服务相关的所有进程的PID与步骤(1)中获取的进程的PID不一致,则软件看门狗进程输出“异常”信号,并转入步骤(4);步骤(3)、软件看门狗进程睡眠预先设定的时间间隔T,然后返回步骤(2);步骤(4)、如果当前运行的所有与Web服务相关的进程PID与步骤(1)中获取的进程PID之间仅有一个进程PID不一致,进入进程层级故障处理流程后返回步骤(1),同时记录进入进程层级故障处理流程的次数retry1;如果当前运行的所有与Web服务相关的进程PID...

【专利技术属性】
技术研发人员:吴建港鲍俊国玉宝阮晓华崔绍辉
申请(专利权)人:宁波市标准化研究院
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1