进程检测方法及装置与流程

文档序号:18337749发布日期:2019-08-03 15:59阅读:179来源:国知局
进程检测方法及装置与流程

本发明涉及计算机软件领域,具体涉及一种进程检测方法及装置。



背景技术:

软件运行中包含了许许多多的进程,进程是软件运行过程中最基本的分配单元,也是最基本的执行单元。进程的运行是否正常也直接影响了软件的运行,因此在运行过程中,需要对进程的状态进行检测。

定时检测进程的状态,可以减少进程异常可能导致的软件系统错误、资料浪费等不良影响。现有技术在检测进程时,往往也是对所有进程进行遍历检测,比较浪费时间和资料,而对于如何更加准确方便快捷的定时检测进程是否正常工作,目前还没有一种比较合适的方法。



技术实现要素:

鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的进程检测方法及装置。

根据本发明的一个方面,提供了一种进程检测方法,其包括:管理进程文件,将具有相同属性的进程文件存储到同一个文件夹内,为文件夹指定具有特定字符的文件名;根据进程文件生成进程,进程的名称包含进程文件的存储路径;在接收到进程检测请求后,根据进程检测请求中携带的特定字符确定需要检测的进程,其中需要检测的进程的名称包含进程检测请求中携带的特定字符;对需要检测的进程进行检测。

根据本发明的另一方面,提供了一种进程检测装置,其包括:管理模块,用于管理进程文件,将具有相同属性的进程文件存储到同一个文件夹内,为文件夹指定具有特定字符的文件名;生成模块,用于根据进程文件生成进程,进程的名称包含进程文件的存储路径;确定模块,用于在接收到进程检测请求后,根据进程检测请求中携带的特定字符确定需要检测的进程,其中需要检测的进程的名称包含进程检测请求中携带的特定字符;检测模块,用于对需要检测的进程进行检测。

根据本发明提供的进程检测方法及装置,将相同属性的进程文件存储至同一文件夹,为文件夹指定特定字符的文件名。根据检测请求中携带的特点字符,确定需要检测的进程,对其进行检测,减少了检测资源的浪费,节省了检测时间,检测更加快捷、方便、准确。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1示出了根据本发明一个实施例的进程检测方法的流程示意图;

图2示出了根据本发明一个实施例的进程检测装置的功能框图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

图1示出了根据本发明一个实施例的进程检测方法的流程示意图,如图1所示,进程检测方法包括:

步骤S101,管理进程文件,将具有相同属性的进程文件存储到同一个文件夹内,为文件夹指定具有特定字符的文件名。

进程文件本身都有其各自的属性,如有用于生成新文件的进程文件,有用于对某些项目进行验证的进程文件等,根据进程文件的属性区分,将相同属性的进程文件存储在同一文件夹内,即对进程文件进行分类,同类进程文件建立在同一文件夹,并使用特定字符为该文件夹命名。

步骤S102,根据进程文件生成进程,进程的名称包含进程文件的存储路径。

一个进程文件可以生成一个或多个的进程,进程根据进程文件生成,生成时进程的名称中可以设置为包含进程文件的存储路径。通过进程的名称,可以很明确的了解到名称中包含该进程文件的存储路径的进程,必然也具备相同的属性。

步骤S103,在接收到进程检测请求后,根据进程检测请求中携带的特定字符确定需要检测的进程,其中需要检测的进程的名称包含进程检测请求中携带的特定字符。

进程生成后,需要对进程进行检测。检测时,可根据具体的检测需求,提出检测请求。如要求对生成新文件的所有进程进行检测,可在检测请求中添加生成新文件的进程文件所在文件夹的特定字符。在接收到进程检测请求后,根据进程检测请求中携带的特定字符和进程名称,确定需要检测的进程。

步骤S104,对需要检测的进程进行检测。

通过步骤S103,确定需要检测的进程后,对这些进程进行检测。检测时,对以下内容的一项或多项进行检测:进程的端口是否畅通、进程在分布式服务框架中是否注册成功、分布式服务框架的是否正常工作。检测时不仅仅限于以上内容,可根据实际实施情况,选择不同的检测内容,如进程状态、进程是否死循环等等。

进程的端口是否畅通的检测步骤为:通过指定命令查找进程,检测进程相关的端口是否畅通。如可使用PS(Process Status)命令,查找运行的进程状态、是否存活、占用资源信息、端口信息等,若查找到进程并且进程相关的端口畅通,则确定进程已启动。若进程已启动,则确定进程检测正常;否则,则确定进程检测异常。

进程在分布式服务框架中是否注册成功的检测步骤为:读取进程的配置文件中记录的服务器信息,在用于管理进程的分布式服务框架中查找服务器信息,如进程配置文件中记录了该进程相关服务器的服务器id,根据该服务器id,查找分布式服务框架是否存在该服务器id。服务器信息可以自主定义,不仅限于服务器id。

若查找到服务器信息,则确定进程在分布式服务框架中注册成功;否则,则确定进程在分布式服务框架中注册失败。若进程在分布式服务框架中注册成功,则确定进程检测正常;否则,则确定进程检测异常。

在确定进程已启动且进程在分布式服务框架中注册成功之后,对需要检测的进程进行检测还包括分布式服务框架的是否正常工作的检测:

首先随机生成字符串,将字符串写入用于管理进程的分布式服务框架的特定节点中。预定时间后从特定节点中读取字符串,将读取的字符串与随机生成的字符串进行比较,若比较结果相同,则分布式服务框架正常工作;比较结果不同或无法从特定节点中读取到字符串,则分布式服务框架未正常工作。当检测到分布式服务框架未正常工作时,重新启动分布式服务框架。若分布式服务框架正常工作,则确定进程检测正常;否则,则确定进程检测异常。

通过对需要检测的进程进行以上一项或多项的检测后,若检测结果为进程检测正常,本次检测结束。在本次检测结束后,可在指定时间间隔后进行下一次检测,或根据新的进程检测请求进行下一次检测。

若检测结果为进程检测异常,发送报警短信,并重新启动进程。当发生分布式服务框架未正常工作的检测异常时,还需要重新启动用于管理进程的分布式服务框架。

根据本发明提供的进程检测方法,将相同属性的进程文件存储至同一文件夹,为文件夹指定特定字符的文件名。根据检测请求中携带的特点字符,确定需要检测的进程,对其进行检测,减少了检测资源的浪费,节省了检测时间,检测更加快捷、方便、准确。

图2示出了根据本发明一个实施例的进程检测装置的功能框图,如图2所示,进程检测装置包括:

管理模块201,用于管理进程文件,将具有相同属性的进程文件存储到同一个文件夹内,为文件夹指定具有特定字符的文件名。

进程文件本身都有其各自的属性,如有用于生成新文件的进程文件,有用于对某些项目进行验证的进程文件等,管理模块201根据进程文件的属性区分,将相同属性的进程文件存储在同一文件夹内,即对进程文件进行分类,管理模块201将同类进程文件建立在同一文件夹内,并使用特定字符为该文件夹命名。

生成模块202,用于根据进程文件生成进程,进程的名称包含进程文件的存储路径。

一个进程文件可以生成一个或多个的进程,进程根据进程文件生成,生成模块202在生成进程时,在进程的名称中设置包含进程文件的存储路径。通过进程的名称,可以很明确的了解到名称中包含该进程文件的存储路径的进程,必然也具备相同的属性。

确定模块203,用于在接收到进程检测请求后,根据进程检测请求中携带的特定字符确定需要检测的进程,其中需要检测的进程的名称包含进程检测请求中携带的特定字符。

生成模块202生成进程后,需要对进程进行检测。检测时,可根据具体的检测需求,提出检测请求。如要求对生成新文件的所有进程进行检测,可在检测请求中添加生成新文件的进程文件所在文件夹的特定字符。确定模块203在接收到进程检测请求后,根据进程检测请求中携带的特定字符和进程名称,确定需要检测的进程。

检测模块204,用于对需要检测的进程进行检测。

执行确定模块203确定需要检测的进程后,检测模块204对这些进程进行检测。检测时,检测模块204可针对以下内容的一项或多项进行检测:启动检测模块2041检测进程的端口是否畅通、注册检测模块2042检测进程在分布式服务框架中是否注册成功、读写检测模块2043检测分布式服务框架的是否正常工作。实际实施时,检测模块204不仅仅限于以上内容,可根据不同情况,选择不同的检测内容,如进程状态、进程是否死循环等等。

检测模块204进一步包括:

启动检测模块2041,用于通过指定命令查找进程,检测进程相关的端口是否畅通。如可使用PS(Process Status)命令,查找运行的进程状态、是否存活、占用资源信息、端口信息等,若查找到进程并且进程相关的端口畅通,则确定进程已启动。启动检测模块2041还用于若进程已启动,则确定进程检测正常;否则,则确定进程检测异常。

注册检测模块2042,用于读取进程的配置文件中记录的服务器信息,在用于管理进程的分布式服务框架中查找服务器信息,如进程配置文件中记录了该进程相关服务器的服务器id,根据该服务器id,查找分布式服务框架是否存在该服务器id。服务器信息可以自主定义,不仅限于服务器id。

若查找到服务器信息,则确定进程在分布式服务框架中注册成功;否则,则确定进程在分布式服务框架中注册失败。注册检测模块2042还用于若进程在分布式服务框架中注册成功,则确定进程检测正常;否则,则确定进程检测异常。

通过执行启动检测模块2041和注册检测模块2042,确定进程已启动且进程在分布式服务框架中注册成功之后,还需要检测执行读写检测模块2043检测分布式服务框架的是否正常工作。

读写检测模块2043,用于随机生成字符串,将字符串写入用于管理进程的分布式服务框架的特定节点中;预定时间后从特定节点中读取字符串,将读取的字符串与随机生成的字符串进行比较,若比较结果相同,则分布式服务框架正常工作;比较结果不同或无法从特定节点中读取到字符串,则分布式服务框架不正常工作。读写检测模块2043还用于若分布式服务框架正常工作,则确定进程检测正常;否则,则确定进程检测异常。

在检测到分布式服务框架不正常工作时,执行异常处理模块2044,用于当检测到分布式服务框架不正常工作时,重新启动分布式服务框架。

通过执行启动检测模块2041、注册检测模块2042和读写检测模块2043对需要检测的进程进行以上一项或多项的检测后,若检测结果为进程检测正常,本次检测结束。在本次检测结束后,可在指定时间间隔后进行下一次检测,或根据新的进程检测请求进行下一次检测。

若检测结果为进程检测异常,执行异常处理模块2044,用于若进程检测异常,发送报警短信,并重新启动进程。当发生读写检测模块2043的检测异常时,异常处理模块2044还用于重新启动用于管理进程的分布式服务框架。

根据本发明提供的进程检测装置,将相同属性的进程文件存储至同一文件夹,为文件夹指定特定字符的文件名。根据检测请求中携带的特点字符,确定需要检测的进程,对其进行检测,减少了检测资源的浪费,节省了检测时间,检测更加快捷、方便、准确。

在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的进程检测装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

本发明公开了:A1、一种进程检测方法,其包括:

管理进程文件,将具有相同属性的进程文件存储到同一个文件夹内,为文件夹指定具有特定字符的文件名;

根据进程文件生成进程,所述进程的名称包含进程文件的存储路径;

在接收到进程检测请求后,根据所述进程检测请求中携带的特定字符确定需要检测的进程,其中需要检测的进程的名称包含所述进程检测请求中携带的特定字符;

对所述需要检测的进程进行检测。

A2、根据A1所述的进程检测方法,其中,所述对需要检测的进程进行检测进一步包括:

通过指定命令查找所述进程,检测所述进程相关的端口是否畅通;

若查找到所述进程并且所述进程相关的端口畅通,则确定所述进程已启动。

A3、根据A2所述的方法,其中,

若所述进程已启动,则确定所述进程检测正常;

否则,则确定所述进程检测异常。

A4、根据A2所述的方法,其中,在确定进程已启动之后,所述对需要检测的进程进行检测还包括:

读取所述进程的配置文件中记录的服务器信息,在用于管理所述进程的分布式服务框架中查找所述服务器信息,若查找到所述服务器信息,则确定所述进程在分布式服务框架中注册成功;否则,则确定所述进程在分布式服务框架中注册失败。

A5、根据A4所述的方法,其中,

若所述进程在分布式服务框架中注册成功,则确定所述进程检测正常;

否则,则确定所述进程检测异常。

A6、根据A4所述的方法,其中,在确定进程已启动且所述进程在分布式服务框架中注册成功之后,所述对需要检测的进程进行检测还包括:

随机生成字符串,将所述字符串写入用于管理所述进程的分布式服务框架的特定节点中;

预定时间后从所述特定节点中读取字符串,将读取的字符串与随机生成的字符串进行比较,若比较结果相同,则分布式服务框架正常工作;比较结果不同或无法从所述特定节点中读取到字符串,则分布式服务框架未正常工作。

A7、根据A6所述的方法,其中,所述方法还包括:当检测到分布式服务框架未正常工作时,重新启动分布式服务框架。

A8、根据A6所述的方法,其中,

若所述分布式服务框架正常工作,则确定所述进程检测正常;

否则,则确定所述进程检测异常。

A9、根据A1-A8中任一项所述的方法,其中,在所述对需要检测的进程进行检测之后,所述方法还包括:

若所述进程检测正常,本次检测结束;

若所述进程检测异常,发送报警短信,并重新启动所述进程。

A10、根据A1-A9中任一项所述的方法,其中,若所述进程检测异常,所述方法还包括:

重新启动用于管理所述进程的分布式服务框架。

A11、根据A1-A10中任一项所述的方法,其中,所述方法还包括:

在指定时间间隔后进行下一次检测;或根据进程检测请求进行下一次检测。

本发明还公开了:B12、一种进程检测装置,其包括:

管理模块,用于管理进程文件,将具有相同属性的进程文件存储到同一个文件夹内,为文件夹指定具有特定字符的文件名;

生成模块,用于根据进程文件生成进程,所述进程的名称包含进程文件的存储路径;

确定模块,用于在接收到进程检测请求后,根据所述进程检测请求中携带的特定字符确定需要检测的进程,其中需要检测的进程的名称包含所述进程检测请求中携带的特定字符;

检测模块,用于对所述需要检测的进程进行检测。

B13、根据B12所述的进程检测装置,其中,所述检测模块进一步包括:

启动检测模块,用于通过指定命令查找所述进程,检测所述进程相关的端口是否畅通;若查找到所述进程并且所述进程相关的端口畅通,则确定所述进程已启动。

B14、根据B13所述的进程检测装置,其中,所述启动检测模块进一步用于若所述进程已启动,则确定所述进程检测正常;否则,则确定所述进程检测异常。

B15、根据B13所述的进程检测装置,其中,所述检测模块进一步包括:

注册检测模块,用于读取所述进程的配置文件中记录的服务器信息,在用于管理所述进程的分布式服务框架中查找所述服务器信息,若查找到所述服务器信息,则确定所述进程在分布式服务框架中注册成功;否则,则确定所述进程在分布式服务框架中注册失败。

B16、根据B15所述的进程检测装置,其中,所述注册检测模块进一步用于若所述进程在分布式服务框架中注册成功,则确定所述进程检测正常;否则,则确定所述进程检测异常。

B17、根据B15所述的进程检测装置,其中,所述检测模块进一步包括:

读写检测模块,用于随机生成字符串,将所述字符串写入用于管理所述进程的分布式服务框架的特定节点中;预定时间后从所述特定节点中读取字符串,将读取的字符串与随机生成的字符串进行比较,若比较结果相同,则分布式服务框架正常工作;比较结果不同或无法从所述特定节点中读取到字符串,则分布式服务框架不正常工作。

B18、根据B17所述的进程检测装置,其中,所述检测模块进一步还包括:

异常处理模块,用于当检测到分布式服务框架不正常工作时,重新启动分布式服务框架。

B19、根据B17所述的进程检测装置,其中,所述读写检测模块进一步用于若所述分布式服务框架正常工作,则确定所述进程检测正常;否则,则确定所述进程检测异常。

B20、根据B12-B19中任一项所述的进程检测装置,其中,所述检测模块进一步用于:若所述进程检测正常,本次检测结束;

所述装置还包括:异常处理模块,用于若所述进程检测异常,发送报警短信,并重新启动所述进程。

B21、根据B12-B20中任一项所述的进程检测装置,其中,所述异常处理模块还用于:重新启动用于管理所述进程的分布式服务框架。

B22、根据B12-B21中任一项所述的进程检测装置,其中,所述检测模块进一步用于:指定时间间隔进行下一次检测;或根据进程检测请求进行下一次检测。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1