CN104199772A - 一种监管进程的方法和装置 - Google Patents
一种监管进程的方法和装置 Download PDFInfo
- Publication number
- CN104199772A CN104199772A CN201410444061.7A CN201410444061A CN104199772A CN 104199772 A CN104199772 A CN 104199772A CN 201410444061 A CN201410444061 A CN 201410444061A CN 104199772 A CN104199772 A CN 104199772A
- Authority
- CN
- China
- Prior art keywords
- pid
- state
- information
- unit
- supervision
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种监管进程的方法和装置,包括启动需要监管的进程,并保存各进程的进程名称和进程身份PID;按照预先设置的第一周期,针对每个监管的进程:采集进程的信息;根据采集到的信息确定进程的状态;如果进程的状态为异常,则停止并重启进程,如果进程的状态为停止,则重启进程。通过本发明提供的技术方案,能够独自、自动地监管进程,从而有效提高了进程监管的效率。
Description
技术领域
本发明涉及计算机技术,尤指一种监管进程的方法和装置。
背景技术
随着信息技术的迅速发展,分布式系统技术得到了广泛的应用。为了提高分布式系统的利用率和稳定性,人们越来越关注分布式系统的管理。分布式系统的管理包括多个方面,其中,分布式系统的进程监管是其中重要的一个方面。
目前,分布式系统的进程监管的方法包括:代理端定期监视需要监管的进程,并将获得的进程的状态信息发送控制端;控制端根据获得的状态信息,判断各进程的状态;如果进程的状态不为正常,则控制端向该进程相应的责任人发送邮件和/或短信;收到邮件和/或短信通知的责任人根据进程的状态完成相应处理。其中,代理端运行在分布式系统中的计算节点如服务器上,控制端运行在分布式系统中的控制节点如用于控制的服务器上。
如上所述,现有的分布式系统的进程监管的方法,对于状态不为正常的进程,代理端、控制端和进程的相关责任人需要配合完成进程的监管,由于该过程中涉及人为因素,降低了进程监管的效率,从而降低了分布式系统的稳定性,影响了分布式系统的用户体验。
发明内容
为了解决上述技术问题,本发明提供了一种监管进程的方法和装置,代理端能够独自、自动地监管进程,从而能够有效提高进程监管的效率。
为了达到本发明目的,本发明公开了一种监管进程的方法,包括:
启动需要监管的进程,并保存各进程的进程名称和进程身份PID;
按照预先设置的第一周期,针对每个监管的进程:采集进程的信息;根据采集到的信息确定进程的状态;如果进程的状态为异常,则停止并重启进程,如果进程的状态为停止,则重启进程。
所述采集进程的信息包括:根据保存的进程名称,获得相应进程的操作系统中的PID。
所述确定进程的状态包括:
判断所述获得PID是否成功,如果失败,则确定所述状态为停止;
如果成功,则判断所述获得的PID与所述保存的PID是否相等,如果二者相等,则确定所述状态为正常,如果二者不相等,则确定所述状态为异常。
所述停止进程和重启进程是根据预先设置的脚本进行的。
所述重启进程后,本发明方法还包括:采用所述进程的新的PID更新对应的保存的PID。
本发明方法还包括:按照预先设置的第二周期向预先设置的邮件服务器发送监管的进程的状态信息,其中,所述状态信息至少包括所述进程的进程名称、PID和状态。
本发明还公开了一种监管进程的装置,包括进程启动单元、信息采集单元、状态确定单元和停止重启单元,其中,
进程启动单元,用于启动需要监管的进程,并保存各进程的进程名称和进程身份PID;
信息采集单元,用于按照预先设置的第一周期,针对每个监管的进程,采集进程的信息;
状态确定单元,用于根据来自信息采集单元的采集到的信息确定进程的状态;
停止重启单元,用于如果来自状态确定单元的进程的状态为异常,则停止并重启进程,如果来自状态确定单元的进程的状态为停止,则重启进程。
所述信息采集单元具体用于:根据保存的进程名称,获得相应进程的操作系统中的PID。
所述状态确定单元具体用于:
如果所述获得PID失败,则确定所述进程的状态为停止;
如果所述获得PID成功,且所述获得的PID与所述保存的PID相等,则确定所述进程的状态为正常;
如果所述获得PID成功,且所述获得的PID与所述保存的PID不相等,则确定所述进程的状态为异常。
所述停止重启单元中的停止进程和重启进程是根据预先设置的脚本进行的。
所述停止重启单元还用于:所述重启进程后,采用所述进程的新的PID更新对应的保存的PID。
本发明装置还包括状态转发单元,用于按照预先设置的第二周期向预先设置的邮件服务器发送监管的进程的状态信息,其中,所述状态信息至少包括各监管的进程的进程名称、PID和状态。
与现有技术相比,本发明的技术方案包括:启动需要监管的进程,并保存各进程的进程名称和进程身份PID;按照预先设置的第一周期,针对每个监管的进程:采集进程的信息;根据采集到的信息确定进程的状态;如果进程的状态为异常,则停止并重启进程,如果进程的状态为停止,则重启进程。通过本发明提供的技术方案,实现了代理端独自、自动地监管进程,有效提高了进程监管效率,从而提高了分布式系统的稳定性,有效降低了当进程的状态不为正常时对分布式系统的用户体验的影响。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1为本发明监管进程的方法的流程图;
图2为本发明方法中确定进程的状态的流程图;
图3为本发明监管进程的装置的组成结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进程详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1为本发明监管进程的方法的流程图,如图1所示,包括:
步骤101:启动需要监管的进程,并保存各进程的进程名称和进程身份(PID)。
需要监管的进程可以以进程名称的形式保存在可动态设置的进程列表中,这样,本发明方法可以读取该进程列表并启动需要监管的进程。
本步骤中保存各进程的进程名称和PID,可以将各进程的进程名称和PID保存到本发明方法能够访问的数据库中。其中,数据库的相关技术为本领域技术人员公知的。
步骤102:按照预先设置的第一周期,针对每个监管的进程;采集进程的信息;根据采集的信息确定进程的状态;如果进程的状态为异常,则停止并重启进程;如果进程的状态为停止,则重启进程。其中,
第一周期可以为秒级的时间,例如1秒、2秒、或10秒等。
本步骤中的采集进程的信息包括:根据保存的进程名称,获得相应进程的操作系统中的PID。其中,根据进程名称获得相应进程的操作系统中的PID是本领域技术人员公知的。
图2为本发明步骤102中确定进程的状态的流程图,如图2所示,包括:
步骤201:判断获得PID是否成功,如果失败,则确定进程的状态为停止。其中,获得PID失败,说明该进程不在操作系统中运行。
步骤202:如果成功,则判断获得的PID与保存的PID是否相等,如果二者相等,则确定进程的状态为正常,如果二者不相等,则确定进程的状态为异常。
其中,获得PID成功,说明从本发明方法启动该进程起,该进程一直在操作系统中运行。
出现状态为异常的进程的原因可以是,该进程由操作系统重启,而不是由本发明方法重启。
步骤101中的停止进程和重启进程是根据预先设置的脚本进行的。其中,脚本可以为本领域技术人员公知的Shell脚本。
进一步地,
重启进程后,本发明方法还包括采用进程的新的PID更新对应的保存的PID。可以采用进程名称和重启进程后操作系统为该进程分配的新的PID,更新数据库中与该进程名称对应的PID。
进一步地,本发明方法还包括:
按照预先设置的第二周期向预先设置的邮件服务器发送监管的进程的状态信息,其中,状态信息至少包括各监管的进程的进程名称、PID和状态。这样,本发明方法可以支持其他方法或装置通过上述邮件服务器获得本发明方法监管的进程的状态信息。也就是说,该步骤为其他方法或装置根据获得的上述状态信息实现其他功能提供了扩展支持。
第二周期可以为秒级时间,例如1秒、2秒、或10秒等。
图3为本发明监管进程的装置的组成结构示意图。如图3所示,包括进程启动单元、信息采集单元、状态确定单元、和停止重启单元,其中,
进程启动单元,用于启动需要监管的进程,并保存各进程的进程名称和进程身份PID;
信息采集单元,用于按照预先设置的第一周期,针对每个监管的进程,采集进程的信息;
状态确定单元,用于根据来自信息采集单元的采集到的信息确定进程的状态为正常、异常、或停止;
停止重启单元,用于如果来自状态确定单元的进程的状态为异常,则停止并重启进程;如果来自状态确定单元的进程的状态为停止,则重启进程。
信息采集单元具体用于:根据保存的进程名称,获得相应进程的操作系统中的PID。
状态确定单元具体用于:
如果获得PID失败,则确定进程的状态为停止;
如果获得相PID成功,且获得的PID与保存的PID相等,则确定进程的状态为正常;
如果获得PID成功,且获得的PID与保存的PID不相等,则确定进程的状态为异常。
进一步地,
停止重启单元中的停止进程和重启进程是根据预先设置的脚本进行的。其中,脚本可以为本领域技术人员公知的Shell脚本。
进一步地,停止重启单元还用于:重启进程后,采用进程的新的PID更新对应的保存的PID。
进一步地,本发明装置还包括状态转发单元,用于按照预先设置的第二周期向预先设置的邮件服务器发送监管的进程的状态信息,其中,状态信息至少包括各监管的进程的进程名称、PID和状态。
虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进程任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
Claims (12)
1.一种监管进程的方法,其特征在于,包括:
启动需要监管的进程,并保存各进程的进程名称和进程身份PID;
按照预先设置的第一周期,针对每个监管的进程:采集进程的信息;根据采集到的信息确定进程的状态;如果进程的状态为异常,则停止并重启进程,如果进程的状态为停止,则重启进程。
2.根据权利要求1所述的方法,其特征在于,所述采集进程的信息包括:根据保存的进程名称,获得相应进程的操作系统中的PID。
3.根据权利要求2所述的方法,其特征在于,所述确定进程的状态包括:
判断所述获得PID是否成功,如果失败,则确定所述状态为停止;
如果成功,则判断所述获得的PID与所述保存的PID是否相等,如果二者相等,则确定所述状态为正常,如果二者不相等,则确定所述状态为异常。
4.根据权利要求1所述的方法,其特征在于,所述停止进程和重启进程是根据预先设置的脚本进行的。
5.根据权利要求1~4任一项所述的方法,其特征在于,所述重启进程后,该方法还包括:采用所述进程的新的PID更新对应的保存的PID。
6.根据权利要求1所述的方法,其特征在于,该方法还包括:按照预先设置的第二周期向预先设置的邮件服务器发送监管的进程的状态信息,其中,所述状态信息至少包括所述进程的进程名称、PID和状态。
7.一种监管进程的装置,其特征在于,包括进程启动单元、信息采集单元、状态确定单元和停止重启单元,其中,
进程启动单元,用于启动需要监管的进程,并保存各进程的进程名称和进程身份PID;
信息采集单元,用于按照预先设置的第一周期,针对每个监管的进程,采集进程的信息;
状态确定单元,用于根据来自信息采集单元的采集到的信息确定进程的状态;
停止重启单元,用于如果来自状态确定单元的进程的状态为异常,则停止并重启进程,如果来自状态确定单元的进程的状态为停止,则重启进程。
8.根据权利要求7所述的装置,其特征在于,所述信息采集单元具体用于:根据保存的进程名称,获得相应进程的操作系统中的PID。
9.根据权利要求8所述的装置,其特征在于,所述状态确定单元具体用于:
如果所述获得PID失败,则确定所述进程的状态为停止;
如果所述获得PID成功,且所述获得的PID与所述保存的PID相等,则确定所述进程的状态为正常;
如果所述获得PID成功,且所述获得的PID与所述保存的PID不相等,则确定所述进程的状态为异常。
10.根据权利要求7所述的装置,其特征在于,所述停止重启单元中的停止进程和重启进程是根据预先设置的脚本进行的。
11.根据权利要求7~10任一项所述的装置,其特征在于,所述停止重启单元还用于:所述重启进程后,采用所述进程的新的PID更新对应的保存的PID。
12.根据权利要求7所述的装置,其特征在于,该装置还包括状态转发单元,用于按照预先设置的第二周期向预先设置的邮件服务器发送监管的进程的状态信息,其中,所述状态信息至少包括各监管的进程的进程名称、PID和状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410444061.7A CN104199772A (zh) | 2014-09-02 | 2014-09-02 | 一种监管进程的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410444061.7A CN104199772A (zh) | 2014-09-02 | 2014-09-02 | 一种监管进程的方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104199772A true CN104199772A (zh) | 2014-12-10 |
Family
ID=52085068
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410444061.7A Pending CN104199772A (zh) | 2014-09-02 | 2014-09-02 | 一种监管进程的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104199772A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106484555A (zh) * | 2016-09-29 | 2017-03-08 | 广东欧珀移动通信有限公司 | 异常检测与恢复的方法及移动终端 |
CN106789191A (zh) * | 2016-12-06 | 2017-05-31 | 微梦创科网络科技(中国)有限公司 | 一种分布式部署服务进程自动重启方法及装置 |
CN107545186A (zh) * | 2017-09-06 | 2018-01-05 | 杭州安恒信息技术有限公司 | 快速解决引擎不工作的方法、装置及系统 |
CN107562597A (zh) * | 2016-06-30 | 2018-01-09 | 中兴通讯股份有限公司 | 一种多进程监测方法、装置及服务系统 |
CN108874618A (zh) * | 2018-05-04 | 2018-11-23 | 平安科技(深圳)有限公司 | Cognos进程的监控方法、装置、计算机设备和存储介质 |
CN110941825A (zh) * | 2019-12-13 | 2020-03-31 | 支付宝(杭州)信息技术有限公司 | 一种应用监控方法及装置 |
CN110955514A (zh) * | 2019-10-09 | 2020-04-03 | 烽火通信科技股份有限公司 | 提高Linux业务进程利用率的方法、系统及计算机可读介质 |
CN113407368A (zh) * | 2020-03-16 | 2021-09-17 | 广东龙芯中科电子科技有限公司 | 进程管理方法、装置和电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020026631A1 (en) * | 2000-08-22 | 2002-02-28 | Isogon Corporation | Method and system for determining the use and non-use of software programs |
CN1904852A (zh) * | 2006-08-01 | 2007-01-31 | 西安西电捷通无线网络通信有限公司 | 一种计算机应用程序的监控及异常处理方法 |
CN101290587A (zh) * | 2008-06-12 | 2008-10-22 | 中兴通讯股份有限公司 | 一种实现进程启动和监控的方法 |
CN102063366A (zh) * | 2009-11-18 | 2011-05-18 | 中兴通讯股份有限公司 | 调试进程的方法和系统 |
CN103383689A (zh) * | 2012-05-03 | 2013-11-06 | 阿里巴巴集团控股有限公司 | 一种服务进程故障检测方法、装置及服务节点 |
-
2014
- 2014-09-02 CN CN201410444061.7A patent/CN104199772A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020026631A1 (en) * | 2000-08-22 | 2002-02-28 | Isogon Corporation | Method and system for determining the use and non-use of software programs |
CN1904852A (zh) * | 2006-08-01 | 2007-01-31 | 西安西电捷通无线网络通信有限公司 | 一种计算机应用程序的监控及异常处理方法 |
CN101290587A (zh) * | 2008-06-12 | 2008-10-22 | 中兴通讯股份有限公司 | 一种实现进程启动和监控的方法 |
CN102063366A (zh) * | 2009-11-18 | 2011-05-18 | 中兴通讯股份有限公司 | 调试进程的方法和系统 |
CN103383689A (zh) * | 2012-05-03 | 2013-11-06 | 阿里巴巴集团控股有限公司 | 一种服务进程故障检测方法、装置及服务节点 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107562597A (zh) * | 2016-06-30 | 2018-01-09 | 中兴通讯股份有限公司 | 一种多进程监测方法、装置及服务系统 |
CN106484555A (zh) * | 2016-09-29 | 2017-03-08 | 广东欧珀移动通信有限公司 | 异常检测与恢复的方法及移动终端 |
CN106484555B (zh) * | 2016-09-29 | 2019-05-17 | Oppo广东移动通信有限公司 | 异常检测与恢复的方法及移动终端 |
CN106789191A (zh) * | 2016-12-06 | 2017-05-31 | 微梦创科网络科技(中国)有限公司 | 一种分布式部署服务进程自动重启方法及装置 |
CN107545186A (zh) * | 2017-09-06 | 2018-01-05 | 杭州安恒信息技术有限公司 | 快速解决引擎不工作的方法、装置及系统 |
CN107545186B (zh) * | 2017-09-06 | 2020-03-17 | 杭州安恒信息技术股份有限公司 | 快速解决引擎不工作的方法、装置及系统 |
CN108874618A (zh) * | 2018-05-04 | 2018-11-23 | 平安科技(深圳)有限公司 | Cognos进程的监控方法、装置、计算机设备和存储介质 |
CN108874618B (zh) * | 2018-05-04 | 2022-03-18 | 平安科技(深圳)有限公司 | Cognos进程的监控方法、装置、计算机设备和存储介质 |
CN110955514A (zh) * | 2019-10-09 | 2020-04-03 | 烽火通信科技股份有限公司 | 提高Linux业务进程利用率的方法、系统及计算机可读介质 |
CN110941825A (zh) * | 2019-12-13 | 2020-03-31 | 支付宝(杭州)信息技术有限公司 | 一种应用监控方法及装置 |
CN110941825B (zh) * | 2019-12-13 | 2022-05-27 | 支付宝(杭州)信息技术有限公司 | 一种应用监控方法及装置 |
CN113407368A (zh) * | 2020-03-16 | 2021-09-17 | 广东龙芯中科电子科技有限公司 | 进程管理方法、装置和电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104199772A (zh) | 一种监管进程的方法和装置 | |
US10871985B2 (en) | Displaying media files between changes in states of an application client | |
US20170331705A1 (en) | Resource Scaling Method on Cloud Platform and Cloud Platform | |
CN102394774B (zh) | 一种云计算操作系统的控制器服务状态监控和故障恢复方法 | |
CN103870747A (zh) | 一种应用程序的监控及处理方法及装置 | |
CN104850460A (zh) | 一种服务程序线程管理方法 | |
CN103678084A (zh) | 一种灵活的应用进程守护方法 | |
CN103152434A (zh) | 一种分布式云系统中的领导节点更替方法 | |
CN106936623A (zh) | 分布式缓存系统及缓存集群的管理方法 | |
KR101941761B1 (ko) | 소비 전력을 감소하기 위한 방법, 장치 및 모바일 단말기 | |
CN107659948B (zh) | 一种控制ap接入的方法及装置 | |
CN112114956A (zh) | 一种任务调度方法、装置和系统 | |
CN103399806A (zh) | 网络备份更新管理方法及其系统 | |
CN104461731A (zh) | 一种动态资源扩展中虚拟机资源回收方法和装置 | |
CN103577306A (zh) | 云平台中主动式探测的高可用软件运行方法 | |
CN106326060A (zh) | 基板管理控制系统及其方法 | |
CN104780062A (zh) | 一种快速获取bmc管理网口ip地址的方法 | |
CN103984622A (zh) | 基于Linux的GPON ONU设备的日志管理方法及装置 | |
CN103902401A (zh) | 基于监控的虚拟机容错方法及装置 | |
CN101883026A (zh) | 一种数据采集系统的维护方法 | |
CN108023748B (zh) | 一种微电网通信控制方法、装置及系统 | |
CN111324504B (zh) | 电力通信网络运行状态监测方法和装置 | |
CN109005246B (zh) | 一种数据的同步方法、装置及系统 | |
CN107070730B (zh) | 一种ctdb的启动方法和装置 | |
JP2011013870A (ja) | 負荷分散システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20141210 |