CN101290587B - 一种实现进程启动和监控的方法 - Google Patents
一种实现进程启动和监控的方法 Download PDFInfo
- Publication number
- CN101290587B CN101290587B CN2008101108450A CN200810110845A CN101290587B CN 101290587 B CN101290587 B CN 101290587B CN 2008101108450 A CN2008101108450 A CN 2008101108450A CN 200810110845 A CN200810110845 A CN 200810110845A CN 101290587 B CN101290587 B CN 101290587B
- Authority
- CN
- China
- Prior art keywords
- client
- message
- server end
- monitoring
- list
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种实现进程启动和监控的方法,包括步骤:服务器端在启动后开启监控进程,并初始化当前的进程列表,当服务器端收到客户端发出的启动进程消息后,查询进程列表中是否存在该进程,若没有,则启动该进程,并为该新启动的进程创建对应的监控子进程以监控该新启动进程的运行状态,服务器端将本次启动的进程的信息写入进程列表,并向客户端返回进程创建成功消息。本发明实现了服务器端通过接收客户端发出的启动进程消息来启动新进程,并且服务器端能够对新启动的进程进行远程监控。
Description
技术领域
本发明涉及计算机软件技术,尤其涉及一种实现进程启动和监控的方法。
背景技术
目前很多大型软件系统都是由多个可执行程序协同工作的,每个可执行程序单独为一个进程。由于大型软件系统内的各个进程之间存在着一定的依赖关系,因此要求软件系统中的进程监控技术具有控制各个进程的启动顺序以及能够对新启动的进程进行监控的功能,并且具有能够获知当前进程状态以及在被监控的进程异常退出后能够自动启动的功能。同时由于大型软件系统大多是由多台硬件服务器共同组成的,因此要求软件系统中的进程监控技术具有能够远程监控其它服务器上的进程的功能。
然而现有技术中的进程监控技术大多是对软件系统中已启动的进程进行监控,而且通常是利用配置文件或硬编码的方式来决定监控哪些进程,即对已知的、既定的进程进行监控,其限制性较大。同时现有的进程监控技术大多被设计为一个单独的可执行程序,只能操作当前机器上的进程,无法实现远程监控。
发明内容
本发明提供一种实现进程启动和监控的方法,用以实现对软件系统中新启动进程的监控。
本发明所述技术方案包括:
一种实现进程启动和监控的方法,包括步骤:
A、服务器端在启动后开启监控进程,并初始化当前的进程列表;
B、当服务器端收到客户端发出的启动进程消息后,查询进程列表中是否存在该进程,若没有,则启动该进程,并为该新启动的进程创建对应的监控子进程以监控该新启动进程的运行状态;
C、服务器端将本次启动的进程的信息写入进程列表,并向客户端返回进程创建成功消息。
进一步地,本发明所述实现进程启动和监控的方法还具有如下特征:所述步骤B中,当服务器端收到客户端发出的启动进程消息后,若查询到进程列表中存在相应的进程,则不进行任何操作,继续等待接收客户端发出的消息。
进一步地,本发明所述实现进程启动和监控的方法还具有如下特征:当所述监控子进程捕获到其监控的进程退出时,所述监控子进程根据该被监控进程的退出码判断该进程是否为正常退出,若是,则从进程列表中删除该被监控进程的信息并终止所述监控子进程,否则,重新启动该被监控进程。
进一步地,本发明所述实现进程启动和监控的方法还具有如下特征:当服务器端收到客户端发出的获取进程列表的消息后,将当前的进程列表返回给客户端。
进一步地,本发明所述实现进程启动和监控的方法还具有如下特征:当服务器端收到客户端发出的终止进程消息后,从中解析出客户端要求终止的进程的信息,然后查询进程列表中是否存在该进程的信息,若存在,则从进程列表中删除该进程的信息,终止该进程,并向客户端返回操作成功消息。
进一步地,本发明所述实现进程启动和监控的方法还具有如下特征:当服务器端收到客户端发出的终止进程消息后,从中解析出客户端要求终止的进程的信息,若进程列表中不存在该进程的信息,则服务器端直接向客户端返回操作失败消息。
本发明通过采用客户端\服务器模型,使得客户端程序与服务器程序可以被安装在不同的硬件服务器上,通过这种模式就可以实现进程的远程监控,使得进程监控操作不仅仅局限于本机,从而大大的扩展了进程监控的应用范围。与现有技术相比,本发明强调的是服务器端接收客户端的消息,根据消息内容来启动新进程,并对新进程进行监控。
进一步地,本发明不但可以创建新进程并进行监控,而且可以灵活的配置各个进程的启动顺序、还可以主动终止进程以及查询新创建进程列表。
附图说明
图1为本发明中实现进程启动及监控的方法的流程图;
图2为本发明中监控子进程重新启动异常退出的被监控进程的流程图;
图3为本发明中服务器端向客户端返回当前进程列表信息的流程图;
图4为本发明中主动终止已启动的进程的流程图。
具体实施方式
下面结合各个附图对本发明的具体实现过程做进一步详细的说明。
请参阅图1,该图为本发明所述实现进程启动及监控的方法的流程图,其主要包括步骤:
步骤10、服务器端在启动后开启监控进程,同时准备接收客户端上报的消息;
步骤11、服务器端对当前创建进程的列表(简称进程列表)进行初始化;
步骤12、服务器端接收客户端上报的消息,并对其进行解析;
步骤13、服务器端判断接收到的消息是否为启动进程消息,若是,执行下一步骤,否则,返回步骤12;
步骤14、服务器端通过查询进程列表判断客户端要求启动的进程是否已经启动,若是,返回步骤12,否则,执行下一步骤;
步骤15、服务器端启动客户端要求启动的进程,将其命名为A进程;
步骤16、服务器端判断A进程是否成功启动,若是,执行步骤17,否则执行步骤20;
步骤17、服务器端为A进程创建对应的监控子进程,将其命名为B进程;
步骤18、服务器端判断B进程是否成功创建,若是,执行步骤19,否则,执行步骤20;
步骤19、服务器端将A进程的信息写入进程列表,并向客户端返回进程创建成功消息,转至步骤21;
步骤20、服务器端向客户端返回进程创建失败消息,转至步骤21;
步骤21、流程结束。
请参阅图2,该图为本发明中监控子进程重新启动异常退出的被监控进程的流程图,其主要包括步骤:
步骤30、监控子进程(将其命名为B进程)监控新启动进程(将其命名为A进程)的运行状态;
步骤31、B进程判断A进程是否退出,若是,执行下一步骤,否则,返回步骤30;
步骤32、B进程获得A进程的退出码,退出码显示了A进程是否为正常退出;
步骤33、B进程根据该退出码判断是否需要重新启动A进程,若是,执行步骤34,否则,执行步骤35;
本步骤中,若退出码显示A进程为正常退出,则不需要重新启动A进程,若退出码显示A进程为异常退出,则需要重新启动A进程。
步骤34、B进程从进程列表中删除A进程的信息,并终止B进程,流程结束。
步骤35、重新启动A进程,返回步骤30。
请参阅图3,该图为本发明中服务器端向客户端返回当前进程列表信息的流程图,其主要包括步骤:
步骤40、客户端向服务器端发送请求获取当前进程列表的消息;
步骤41、服务器端接收客户端发出的消息,并对其进行解析;
步骤42、服务器端判断接收到的消息是否为请求获取进程列表的消息,若是,执行下一步骤,否则,返回步骤41;
步骤43、服务器端向客户端返回当前进程列表。
请参阅图4,该图为本发明中主动终止已启动的进程的流程图,其主要包括步骤:
步骤50、客户端向服务器端发送主动终止进程的消息;
步骤51、服务器端接收客户端发出的消息,并对其进行解析;
步骤52、服务器端判断接收到的消息是否为主动终止进程的消息,若是,执行下一步骤,否则,返回步骤51;
步骤53、服务器端获取需终止的进程信息,将该进程命名为C进程;
步骤54、服务器端查看当前的进程列表中是否存在C进程的信息,若存在,执行步骤55,否则执行步骤58;
步骤55、服务器端执行从进程列表中删除C进程的信息,并终止C进程的操作;
步骤56、判断从进程列表中删除C进程的信息并终止C进程是否成功,若成功,执行下一步骤,否则,执行步骤58;
步骤57、服务器端向客户端返回操作成功消息,流程结束。
步骤58、服务器端向客户端返回操作失败消息,流程结束。
客户端\服务器模型和创建新进程这2点是本发明的主要优点。
本发明通过采用客户端\服务器模型,使得客户端程序与服务器程序可以被安装在不同的硬件服务器上,例如:在硬件服务器A上安装服务器程序,在硬件服务器B上安装客户端程序,那么在硬件服务器B上即可通过客户端程序发送消息给硬件服务器A上的服务器程序,服务器程序接受到消息后,解析消息内容然后根据消息内容执行操作,最终将操作的结果返回给客户端程序。通过这种模式就可以实现进程的远程监控,使得进程监控操作不仅仅局限于本机,从而大大的扩展了进程监控的应用范围。与现有技术相比,本发明强调的是服务器端接收客户端的消息,根据消息内容来启动新进程,并对新进程进行监控。
进一步地,本发明不但可以创建新进程并进行监控,而且可以灵活的配置各个进程的启动顺序、还可以主动终止进程以及查询新创建进程列表。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (6)
1.一种实现进程启动和监控的方法,其特征在于,包括步骤:
A、服务器端在启动后开启监控进程,并初始化当前的进程列表;
B、当服务器端收到客户端发出的启动进程消息后,查询进程列表中是否存在该进程,若没有,则启动该进程,并为该新启动的进程创建对应的监控子进程以监控该新启动进程的运行状态;
C、服务器端将本次启动的进程的信息写入进程列表,并向客户端返回进程创建成功消息。
2.如权利要求1所述的方法,其特征在于,所述步骤B中,当服务器端收到客户端发出的启动进程消息后,若查询到进程列表中存在相应的进程,则不进行任何操作,继续等待接收客户端发出的消息。
3.如权利要求1所述的方法,其特征在于,当所述监控子进程捕获到其监控的进程退出时,所述监控子进程根据该被监控进程的退出码判断该进程是否为正常退出,若是,则从进程列表中删除该被监控进程的信息并终止所述监控子进程,否则,重新启动该被监控进程。
4.如权利要求1所述的方法,其特征在于,当服务器端收到客户端发出的获取进程列表的消息后,将当前的进程列表返回给客户端。
5.如权利要求1所述的方法,其特征在于,当服务器端收到客户端发出的终止进程消息后,从中解析出客户端要求终止的进程的信息,然后查询进程列表中是否存在该进程的信息,若存在,则从进程列表中删除该进程的信息,终止该进程,并向客户端返回操作成功消息。
6.如权利要求5所述的方法,其特征在于,当服务器端收到客户端发出的终止进程消息后,从中解析出客户端要求终止的进程的信息,若进程列表中不存在该进程的信息,则服务器端直接向客户端返回操作失败消息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101108450A CN101290587B (zh) | 2008-06-12 | 2008-06-12 | 一种实现进程启动和监控的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101108450A CN101290587B (zh) | 2008-06-12 | 2008-06-12 | 一种实现进程启动和监控的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101290587A CN101290587A (zh) | 2008-10-22 |
CN101290587B true CN101290587B (zh) | 2010-06-16 |
Family
ID=40034854
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008101108450A Expired - Fee Related CN101290587B (zh) | 2008-06-12 | 2008-06-12 | 一种实现进程启动和监控的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101290587B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102681908A (zh) * | 2012-05-15 | 2012-09-19 | 沈阳通用软件有限公司 | 在Windows平台任意状态下最前端显示的报警通知方法 |
WO2013053289A1 (en) * | 2011-10-12 | 2013-04-18 | Hangzhou H3C Technologies Co., Ltd. | Starting a process |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101727378B (zh) * | 2009-12-31 | 2013-04-17 | 深圳联友科技有限公司 | 一种应用服务程序稳定运行控制方法及系统 |
CN102377799B (zh) * | 2010-08-11 | 2016-01-13 | 腾讯科技(深圳)有限公司 | 手机浏览器服务器端及其实现浏览器双线程模式的方法 |
CN102147845A (zh) * | 2011-04-18 | 2011-08-10 | 北京思创银联科技股份有限公司 | 进程监控方法 |
CN103186420A (zh) * | 2011-12-31 | 2013-07-03 | 北京北方微电子基地设备工艺研究中心有限责任公司 | 集群设备控制系统及其调度方法 |
CN103207806B (zh) * | 2012-01-12 | 2016-05-04 | 阿里巴巴集团控股有限公司 | 一种发送消息的方法及其系统 |
CN102880817A (zh) * | 2012-08-20 | 2013-01-16 | 福建升腾资讯有限公司 | 计算机软件产品运行保护方法 |
CN103678342B (zh) * | 2012-09-07 | 2018-04-27 | 腾讯科技(深圳)有限公司 | 启动项识别方法及装置 |
CN103150240B (zh) * | 2013-03-19 | 2015-04-08 | 天脉聚源(北京)传媒科技有限公司 | 一种应用进程的监控方法和系统 |
CN104572394B (zh) * | 2013-10-29 | 2018-04-27 | 腾讯科技(深圳)有限公司 | 进程监控方法及装置 |
CN105279433B (zh) * | 2014-07-10 | 2020-10-16 | 腾讯科技(深圳)有限公司 | 一种应用程序的防护方法及装置 |
CN104156662B (zh) * | 2014-08-28 | 2017-10-27 | 北京奇虎科技有限公司 | 进程监控的方法、装置和智能终端 |
CN104199772A (zh) * | 2014-09-02 | 2014-12-10 | 浪潮(北京)电子信息产业有限公司 | 一种监管进程的方法和装置 |
CN105589757A (zh) * | 2014-10-23 | 2016-05-18 | 上海天脉聚源文化传媒有限公司 | 一种服务器架构下的保护工作进程的方法和服务器 |
CN105573777B (zh) * | 2014-11-11 | 2020-01-14 | 阿里巴巴集团控股有限公司 | 应用中服务的控制方法及装置 |
CN104951346B (zh) * | 2015-07-07 | 2018-03-06 | 上海斐讯数据通信技术有限公司 | 一种用于嵌入式系统的进程管理方法及系统 |
CN105068916B (zh) * | 2015-08-28 | 2017-12-08 | 福建六壬网安股份有限公司 | 一种基于内核hook的进程行为监控方法 |
CN105975384B (zh) * | 2016-04-28 | 2018-10-26 | 北京小米移动软件有限公司 | 分布式进程的监控方法和装置 |
CN106020952B (zh) * | 2016-05-13 | 2020-01-31 | 中国建设银行股份有限公司 | 一种多主机管理方法及一种受管主机和管理主机 |
CN109426591B (zh) * | 2017-09-04 | 2021-01-01 | 武汉斗鱼网络科技有限公司 | 守护windows单一程序的多个进程的方法及设备 |
CN112527589A (zh) * | 2019-09-17 | 2021-03-19 | 比亚迪股份有限公司 | 监控进程的方法和监控进程的装置 |
CN113645104A (zh) * | 2021-10-19 | 2021-11-12 | 北京国科天迅科技有限公司 | Fc交换机总线配置管理软件监控方法及装置 |
CN114385329B (zh) * | 2021-12-06 | 2023-03-28 | 深圳市亚略特科技股份有限公司 | 进程管理方法、装置、电子装置及可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1470992A (zh) * | 2002-07-23 | 2004-01-28 | 华为技术有限公司 | 一种对利用共享内存对象记录普通进程异常退出的定位方法 |
CN1506826A (zh) * | 2002-12-09 | 2004-06-23 | 联想(北京)有限公司 | 计算机应用软件自纠错自重起方法 |
CN1924810A (zh) * | 2005-09-02 | 2007-03-07 | 中兴通讯股份有限公司 | 一种业务进程的分布式分优先级监控方法 |
-
2008
- 2008-06-12 CN CN2008101108450A patent/CN101290587B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1470992A (zh) * | 2002-07-23 | 2004-01-28 | 华为技术有限公司 | 一种对利用共享内存对象记录普通进程异常退出的定位方法 |
CN1506826A (zh) * | 2002-12-09 | 2004-06-23 | 联想(北京)有限公司 | 计算机应用软件自纠错自重起方法 |
CN1924810A (zh) * | 2005-09-02 | 2007-03-07 | 中兴通讯股份有限公司 | 一种业务进程的分布式分优先级监控方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013053289A1 (en) * | 2011-10-12 | 2013-04-18 | Hangzhou H3C Technologies Co., Ltd. | Starting a process |
GB2513690A (en) * | 2011-10-12 | 2014-11-05 | Hangzhou H3C Tech Co Ltd | Starting a process |
CN102681908A (zh) * | 2012-05-15 | 2012-09-19 | 沈阳通用软件有限公司 | 在Windows平台任意状态下最前端显示的报警通知方法 |
CN102681908B (zh) * | 2012-05-15 | 2014-10-22 | 沈阳通用软件有限公司 | 在Windows平台任意状态下最前端显示的报警通知方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101290587A (zh) | 2008-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101290587B (zh) | 一种实现进程启动和监控的方法 | |
US20220179682A1 (en) | Task processing method, apparatus, and system based on distributed system | |
CN102291416B (zh) | 一种客户端与服务器端双向同步的方法及系统 | |
CN101188566B (zh) | 一种集群环境下数据缓存同步的方法及系统 | |
CN100543688C (zh) | 设备升级的方法 | |
CN103677858A (zh) | 一种云环境中虚拟机软件管理的方法、系统及设备 | |
CN111917833B (zh) | 客户端程序在云环境中的应用方法、装置及系统 | |
US7228352B1 (en) | Data access management system in distributed processing system | |
KR101424568B1 (ko) | 트랜잭션 재시작 가능한 클라이언트 장치와 데이터베이스 서버 및 방법 | |
CN109408135A (zh) | 双系统升级方法、装置、设备及计算机可读存储介质 | |
US20090165011A1 (en) | Resource management method, information processing system, information processing apparatus, and program | |
CN111274257B (zh) | 一种基于数据的实时同步方法及系统 | |
CN110417882B (zh) | 主节点的确定方法、装置和存储介质 | |
CN111917588A (zh) | 边缘设备管理方法、装置、边缘网关设备和存储介质 | |
WO2018036255A1 (zh) | 一种恢复网络设备的出厂配置的方法、装置及网络设备 | |
CN103049348B (zh) | 多服务器化环境下数据容错存储的方法 | |
CN112328560B (zh) | 一种文件调度方法和系统 | |
CN113535262A (zh) | 一种代理节点的启动控制方法、装置、设备及存储介质 | |
JP5509564B2 (ja) | メッセージ送信方法及びプログラム | |
CN117762474A (zh) | 一种数据库高可用软件管理方法、装置及系统 | |
CN111209125B (zh) | 一种多进程的命令行实现方法 | |
CN100505735C (zh) | 一种多节点智能网络应用服务系统中的会话管理方法 | |
JP2006285867A (ja) | ファイル管理システム、監視サーバ、ファイルサーバ、ファイル管理方法、及び、プログラム | |
CN109245979B (zh) | 一种CANopen主从站可靠性控制方法及其统筹管理器 | |
CN107273047B (zh) | 一种缓存管理方法、缓存管理器及存储管理软件 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100616 Termination date: 20160612 |