CN110569115B - 多点部署的进程管理方法及进程的争夺方法 - Google Patents
多点部署的进程管理方法及进程的争夺方法 Download PDFInfo
- Publication number
- CN110569115B CN110569115B CN201910755540.3A CN201910755540A CN110569115B CN 110569115 B CN110569115 B CN 110569115B CN 201910755540 A CN201910755540 A CN 201910755540A CN 110569115 B CN110569115 B CN 110569115B
- Authority
- CN
- China
- Prior art keywords
- task
- information
- identification information
- content
- contended
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Abstract
本发明公开了一种基于多服务的进程管理方法,所述多服务应用于多台终端设备,所述进程管理方法包括:获取所有任务的任务内容,并基于所述任务内容创建任务表;基于所述任务表生成所述任务内容和进程内容的任务关系表;获取多个查询指令,并反馈所述任务表和/或所述任务关系表;获取至少一个争夺信息;基于所述至少一个争夺信息对所述任务关系表进行管理,并生成对应的管理结果;反馈所述管理结果。本发明还公开了一种进程的争夺方法。通过在多设备中共享任务内容和进程内容并进行统一的管理,从而实现了进程的多设备管理,有效避免了因某台设备故障导致的服务故障风险,保证了项目的稳定可靠运行。
Description
技术领域
本发明涉及进程管理技术领域,具体地,涉及一种多点部署的进程管理方法及一种进程的争夺方法。
背景技术
随着计算机技术的不断发展,能够在计算机上进行处理的程序越来越多,因此需要对计算机的程序进行管理。在目前对计算机程序的管理过程中,往往通过创建服务来对每个程序的运行进行管理。
目前的服务只能在一台终端设备上独立启动运行,若需要执行一个服务,则启动对应的主进程,并通过主进程对执行该服务所需要启动的多个子进程进行管理,不同的服务可以实现不同的工作,例如同步数据、发送短信以及下载数据等。
然而在实际应用过程中,由于在目前的多进程管理方法中主进程管理的子进程只能在一台终端设备上运行,因此主进程只能够对当前终端设备中的子进程进行管理,而无法通过在多台设备上同时运行以对多台设备上的不同子进程进行管理,因而无法对服务进行横向的扩展。
同时由于上述限制,在现有技术中,技术人员在实现某个项目的所有功能时,往往在一台设备上运行该项目所有需要运行的进程或服务,而一旦该设备出现故障或问题,则将导致该设备上的所有进程都无法正常运行的情况,从而出现服务故障,影响企业的正常运营。
发明内容
为了克服现有技术中无法对多设备的进程进行统一管理以及现有进程管理方法存在服务故障风险的技术问题,本发明实施例提供一种多点部署的进程管理方法及一种进程的争夺方法,通过在多点部署的多个终端设备中全局共享任务内容和进程内容并进行统一的管理,从而实现了进程的多设备管理,有效避免了因某台设备故障导致的服务故障风险,保证了项目的稳定可靠运行。
为了实现上述目的,本发明实施例提供一种多点部署的进程管理方法,应用于第一终端设备,所述进程管理方法包括:获取所有任务的任务内容,并基于所述任务内容创建任务表;基于所述任务表生成所述任务内容和进程内容的任务关系表;获取多个查询指令,并反馈所述任务表和/或所述任务关系表;获取至少一个争夺信息;基于所述至少一个争夺信息对所述任务关系表进行管理,并生成对应的管理结果;反馈所述管理结果。
优选地,所述任务表包括至少一个所述任务内容,每个所述任务内容包括任务标识信息、任务名称信息以及任务状态信息,所述任务关系表包括多个所述进程内容,每个所述进程内容包括进程唯一标识信息、所述任务标识信息、进程运行时间信息、所述任务状态信息以及设备地址信息;所述基于所述任务表生成所述任务内容和进程内容的任务关系表,包括:基于所述任务标识信息生成所述任务内容和进程内容的任务关系表。
优选地,所述争夺信息包括待管理任务标识信息和待管理进程标识信息,所述基于所述至少一个争夺信息对所述任务关系表进行管理,并生成对应的管理结果,包括:基于所述任务关系表获取与所述待管理任务标识信息对应的原进程唯一标识信息;判断所述原进程唯一标识信息是否为空值;若所述原进程唯一标识信息为空值,则基于所述待管理进程标识信息对所述进程唯一标识信息进行修改以获得修改后进程唯一标识信息;基于所述修改后进程唯一标识信息生成新的任务关系表,并生成修改成功的管理结果;若所述原进程唯一标识信息不为空值,则生成修改失败的管理结果。
优选地,所述进程管理方法还包括:获取时间更新指令;基于所述时间更新指令对所述进程运行时间信息进行更新,并获得更新后进程运行时间信息;基于所述更新后进程运行时间信息生成新的任务关系表。
优选地,所述进程管理方法还包括:获取进程清除指令;基于所述进程清除指令对所述任务关系表中对应的进程内容执行清除操作,并生成新的任务关系表。
相应的,本发明还提供一种进程的争夺方法,应用于第二终端设备,所述争夺方法包括:按照第一预设时间周期发送查询指令;获取基于所述查询指令反馈的任务表和任务关系表,其中所述任务表中包括多个任务内容,所述任务关系表中包括与所述多个任务内容对应的多个进程内容;基于所述任务表和所述任务关系表判断是否存在待争夺任务;若存在所述待争夺任务,则生成并发送对应的争夺信息;获取与所述争夺信息对应的争夺结果。
优选地,所述按照第一预设时间周期发送查询指令,包括:按照所述第一预设时间周期发送任务表查询指令;判断是否获取到基于所述任务表查询指令反馈的任务表;在获取到所述任务表的情况下,发送任务关系表查询指令。
优选地,每个所述任务内容包括任务标识信息、任务名称信息以及任务状态信息,每个所述进程内容包括进程唯一标识信息、所述任务标识信息、进程运行时间信息、所述任务状态信息以及设备地址信息。
优选地,所述基于所述任务表和所述任务关系表判断是否存在待争夺任务,包括:获取所述任务表中的第一任务标识信息和所述任务关系表中的第二任务标识信息;判断在所述第一任务标识信息中是否存在与所述第二任务标识信息不匹配的不匹配任务标识信息;若存在所述不匹配任务标识信息,则将与所述不匹配任务标识信息对应的任务内容作为所述待争夺任务。
优选地,所述若存在所述待争夺任务,则生成并发送对应的争夺信息,包括:获取与所述待争夺任务对应的待争夺进程信息;启动与所述待争夺进程信息对应的待争夺进程;提取所述待争夺进程信息中的待争夺任务标识信息以及待争夺进程唯一标识信息;将所述待争夺任务标识信息和所述待争夺进程唯一标识信息作为所述争夺信息,发送所述争夺信息。
优选地,在所述获取与所述争夺信息对应的争夺结果后,所述争夺方法还包括:若所述争夺结果为争夺成功,则运行所述待争夺进程;若所述争夺结果为争夺失败,则清除所述待争夺进程。
优选地,所述争夺方法还包括:按照第二预设时间周期生成对所述任务关系表中的所有进程运行时间信息进行更新的时间更新指令;发送所述时间更新指令。
优选地,所述争夺方法还包括:按照第三预设时间周期获取所述任务关系表中每个所述进程内容的进程运行时间信息;获取所述进程运行时间信息与当前时间的运行时间差;判断是否存在运行时间差大于预设时间阈值的未响应进程信息;若存在所述未响应进程信息,则生成并发送与所述未响应进程信息对应的进程清除指令。
优选地,所述争夺方法还包括:判断是否存在执行完成的完成任务内容或执行异常的异常任务内容;若存在所述完成任务内容或所述异常任务内容,则生成并发送与所述完成任务内容或所述异常任务内容对应的进程清除指令。
另一方面,本发明还提供一种多点部署的进程管理系统,所述进程管理系统包括第一终端设备和多个第二终端设备,所述第一终端设备加载并执行本发明提供的进程管理方法,所述第二终端设备加载并执行本发明提供的争夺方法。
另一方面,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明提供的方法。
另一方面,本发明还提供一种服务器,包括:处理器;以及存储设备,存储有计算机程序指令,与所述处理器连接,所述计算机程序指令在所述处理器中加载并执行本发明提供的进程管理方法。
通过根据当前项目的所有任务内容创建任务表以及对应的任务关系表,将上述任务表和任务关系表在多设备中共享,每个设备中的Master进程可以共同对当前项目的所有任务内容进行协调处理,从而实现了当前项目的多个进程在不同设备中的统一管理,即实现了进程的多设备管理,有效避免了因某台设备故障导致的服务故障风险,保证了项目的稳定可靠运行,同时实现了脚本服务的横向扩展,相比于现有技术实现了更优的进程分配和进程管理功能。
本发明的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。在附图中:
图1为本发明实施例提供的多点部署的进程管理方法的具体实现流程图;
图2为本发明实施例提供的多点部署的进程管理方法中对任务关系表进行管理并生成管理结果的具体实现流程图;
图3为本发明实施例提供的进程的争夺方法的具体实现流程图。
具体实施方式
为了克服现有技术中无法对多设备的进程进行统一管理以及现有进程管理方法存在服务故障风险的技术问题,本发明实施例提供一种多点部署的进程管理方法及一种进程的争夺方法,通过在多点部署的多个终端设备中全局共享任务内容和进程内容并进行统一的管理,从而实现了进程的多设备管理,有效避免了因某台设备故障导致的服务故障风险,保证了项目的稳定可靠运行。
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
本发明实施例中的术语“系统”和“网络”可被互换使用。“多个”是指两个或两个以上,鉴于此,本发明实施例中也可以将“多个”理解为“至少两个”。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,字符“/”,如无特殊说明,一般表示前后关联对象是一种“或”的关系。另外,需要理解的是,在本发明实施例的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
下面首先介绍本发明的背景技术。
在目前终端设备的正常运行过程中,终端设备的多个子进程由一个主进程(例如该主进程为Master进程)进行统一管理,在有项目需求或需要执行某个功能任务时,首先运行该功能任务对应的脚本服务,该脚本服务启动master进程,然后由该Master进程启动对应的子进程,然后由该子进程执行对应的具体工作任务,上述项目或功能任务由多个子进程共同执行实现,当某个子进程执行完成后,再由上述Master进程将该子进程清除,若某个子进程退出或意外停止,同样由上述Master进程再次启动该子进程。
然而在实际应用过程中,由于Master进程只能对当前终端设备的子进程进行管理,而在现有技术中,有某个项目或功能任务需要实现时,往往只能在单个设备上执行对应的进程任务,因此一旦该单个设备出现故障或损坏,则会导致在该单个设备上运行的项目或功能任务无法实现或无法执行,从而导致对用户的服务障碍,极大的影响了企业的正常运营,降低了用户体验。
请参见图1,本发明实施例提供一种多点部署的进程管理方法,应用于第一终端设备,所述进程管理方法包括:
S1100)获取所有任务的任务内容,并基于所述任务内容创建任务表;
S1200)基于所述任务表生成所述任务内容和进程内容的任务关系表;
S1300)获取多个查询指令,并反馈所述任务表和/或所述任务关系表;
S1400)获取至少一个争夺信息;
S1500)基于所述至少一个争夺信息对所述任务关系表进行管理,并生成对应的管理结果;
S1600)反馈所述管理结果。
在本发明实施例中,所述任务表包括至少一个所述任务内容,每个所述任务内容包括任务标识信息、任务名称信息以及任务状态信息,所述任务关系表包括多个所述进程内容,每个所述进程内容包括进程唯一标识信息、所述任务标识信息、进程运行时间信息、所述任务状态信息以及设备地址信息;所述基于所述任务表生成所述任务内容和进程内容的任务关系表,包括:基于所述任务标识信息生成所述任务内容和进程内容的任务关系表。
在一种可能的实施方式中,技术人员将要执行某个项目,该项目包含多个任务内容,其中每个任务内容均包括至少一个进程内容。技术人员首先创建任务内容,例如技术人员在第一终端设备中创建当前待执行项目的任务内容,此时第一终端设备根据上述项目内容自动生成对应的任务表,然后第一终端设备对每个任务内容进行解析,以获取每个任务内容所对应的进程内容,并根据上述进程内容生成与任务表对应的任务关系表。
优选地,在本发明实施例中,所述第一终端设备和所述第二终端设备均包括但不限于服务器、电脑终端、平板电脑、移动终端中的任意一种。
例如在A终端设备运行Master进程1,在B终端设备运行Master进程2,在C终端设备上运行Master进程3,在E终端设备上存储有任务表和任务关系表,在运行过程中,A终端设备、B终端设备和C终端设备均按照第一预设时间周期(例如该第一预设时间周期为1分钟)向E终端设备发送查询指令,并均接收到E终端设备反馈的上述任务表和任务关系表,此时Master进程1、Master进程2以及Master进程3立即分别对任务表和任务关系表中的任务内容和进程内容进行对比,以判断当前是否存在待争夺的任务。例如在任务表中包括3个任务内容,其中每个任务内容均包括任务标识信息job_id、任务名称信息job_name以及任务状态信息status,任务状态信息status用来决定是否启动该任务内容,在本发明实施例中,上述3个任务内容中第一个任务内容和第二个任务内容的任务名称信息job_name相同但任务内容的其他信息不同,即表明该任务名称信息job_name对应的任务需要启用2个进程来处理。对应的,在任务关系表中也包括3个进程内容,其中每个进程内容包括进程唯一标识信息pid、任务标识信息job_id、进程运行时间信息work_time、任务状态信息status以及设备地址信息ip。
Master进程1和Master进程2在获取到上述任务表和任务关系表后,立即根据上述任务表和任务关系表查看是否存在需要争夺的待争夺任务,例如将任务关系表中的job_id与任务表中的job_id进行匹配,查看在任务表中是否存在未匹配的job_id,若存在则确定与该job_id对应的任务为待争夺任务,因此立即根据该job_id生成对应的争夺信息,并将该争夺信息发送至E终端设备中,即此时A终端设备和B终端设备均向E终端设备发送该争夺信息以争取在A终端设备或B终端设备上执行该任务,而C终端设备当前处理的进程数达到预设数量上限,因此不对上述待争夺任务进行争夺。
进一步地,在确定存在上述待争夺任务后,Master进程1和Master进程2还可以首先在当前终端设备上启动对应的子进程,然后再向E终端设备发送对应的争夺信息,以进一步提高对待争夺任务的响应速度,进一步降低进程在不同终端设备运行的时间间隔,降低对用户体验的影响。
E终端设备在获取到上述争夺信息后,立即对该争夺信息对应的任务信息进行管理,并获得对应的管理结果,然后将该管理结果反馈至A终端设备和B终端设备,从而完成在多设备上的任务进程的统一管理。
在本发明实施例中,通过根据要处理的项目的任务内容和进程内容生成对应的任务表以及任务关系表,并在全局共享上述任务表和任务关系表,从而允许全局中每个终端设备上的Master进程都可以根据任务表和任务关系表来实时动态调节在每个终端设备上执行的进程,即使全局中的某个或某几个终端设备因故障而突然失效,其他终端设备依然可以完整地执行该项目的所有任务内容和进程内容,有效保证了项目的正常和稳定运行,同时本发明相比于现有技术还允许将一个终端设备上的脚本服务横向扩展到其他终端设备,具有更好的服务能力,运行稳定性和可靠性更高。
请参见图2,在本发明实施例中,所述争夺信息包括待管理任务标识信息和待管理进程标识信息,所述基于所述至少一个争夺信息对所述任务关系表进行管理,并生成对应的管理结果,包括:
S1501)基于所述任务关系表获取与所述待管理任务标识信息对应的原进程唯一标识信息;
S1502)判断所述原进程唯一标识信息是否为空值;
S1503)若所述原进程唯一标识信息为空值,则基于所述待管理进程标识信息对所述进程唯一标识信息进行修改以获得修改后进程唯一标识信息;
S1504)基于所述修改后进程唯一标识信息生成新的任务关系表,并生成修改成功的管理结果;
S1505)若所述原进程唯一标识信息不为空值,则生成修改失败的管理结果。
在一种可能的实施方式中,在每个争夺信息中都至少包括对应进程信息的待管理任务标识信息和待管理进程信息等信息,终端设备E先后获取到来自终端设备A、终端设备B、终端设备C以及终端设备D的争夺信息,因此根据每个争夺信息都对任务关系表进行管理。例如,首先根据终端设备A发送的争夺信息提取出对应的待管理任务标识信息和待管理进程信息,然后终端设备E根据当前的任务关系表查询与该待管理任务标识信息对应的原进程唯一标识信息,并判断该原进程唯一标识信息是否为空值,若该原进程唯一标识信息为空值,则确定当前还没有终端设备争夺到与该待管理任务标识信息对应的待争夺任务的运行权利,因此基于该争夺信息中的待管理进程标识信息对当前任务关系表中的进程唯一标识信息进行修改以获得修改后进程唯一标识信息,基于该修改后进程唯一标识信息生成新的任务关系表,同时生成修改成功的管理结果,并将该管理结果反馈至终端设备A。然后再对终端设备B的争夺信息进行解析,由于终端设备A首先完成争夺操作并对原进程唯一标识信息进行了赋值,因此在解析过程中发现与终端设备B的争夺信息中待管理任务标识信息对应的原进程唯一标识信息不是空值,因此生成修改失败的管理结果,并将该管理结果反馈至终端设备B,同理对终端设备C和终端设备D的争夺信息进行解析后,反馈修改失败的管理结果至终端设备C和终端设备D。
终端设备A在获取到修改成功的管理结果后,确认启动的与该争夺信息对应的子进程确认运行成功,因此开始运行该子进程;而终端设备B、终端设备C和终端设备D接收到修改失败的管理结果,因此将确定启动的与该争夺信息对应的子进程确认运行失败,因此停止并注销启动的子进程,从而完成对上述待争夺任务的争夺操作。
在本发明实施例中,通过对任务表和任务关系表进行统一的管理,多个具有执行能力的终端设备在获取到任务表中存在待争夺的任务后,均对该待争夺任务进行争夺,从而使每个待争夺任务都能够被具有执行能力的所争夺过去并可靠运行,即使存在某个终端设备因故障而无法实现对应的功能,在全局中的其他终端设备也能够及时发现并及时将无法实现的功能争夺过来执行,保障了每个任务的可靠、稳定运行,大大减少了对企业的正常运营的影响,提高了用户体验。
同时通过采用多终端设备争夺的方式对待争夺任务进行运行权利的获取,从而有效避免了相同任务在多个终端设备上重复执行而导致的任务执行混乱以及资源占用浪费等问题,提高了对资源的利用率,提高了任务的执行效率。
进一步地,技术人员还可以根据本发明所述的方法,将一个终端设备上的脚本服务横向扩展到其他终端设备上运行,从而实现设备资源的最优化分配以及程序功能在运行过程中的运行效率优化,相比于现有技术具有更好的资源分配能力以及更高的运行效率,进一步提高了用户体验。
在本发明实施例中,所述进程管理方法还包括:获取时间更新指令;基于所述时间更新指令对所述进程运行时间信息进行更新,并获得更新后进程运行时间信息;基于所述更新后进程运行时间信息生成新的任务关系表。
在一种可能的实施方式中,每个子进程的运行过程中,每个子进程按照第二预设时间周期(例如该第二时间周期为5分钟)生成对每个进程对应的进程内容的进程运行时间信息进行更新的时间更新指令,并将该时间更新指令发送至终端设备E中,以对任务关系表中当前子进程所对应的进程运行时间信息进行更新,并以此表明该进程依然处于正常运行状态,终端设备E在获取到该时间更新指令后,立即对该时间更新指令对应的进程运行时间信息进行更新,例如将该进程运行时间信息更新为当前时间,并根据更新后进程运行时间信息生成新的任务关系表,以供不同的Master进程进行查询。
进一步地,在本发明实施例中,所述进程管理方法还包括:获取进程清除指令;基于所述进程清除指令对所述任务关系表中对应的进程内容执行清除操作,并生成新的任务关系表。
在一种可能的实施方式中,Master进程在对当前管理的子进程进行管理的过程中,还按照第三预设时间周期(例如该第三预设时间周期为5分钟)对任务关系表中与当前管理的子进程对应的进程运行时间信息进行检查,例如检查当前管理的子进程对应的进程运行时间信息与当前时间之间的时间差是否大于预设时间阈值(例如该预设时间阈值为5分钟),若存在进程运行时间信息与当前时间之间的时间差大于预设时间阈值的子进程,即该子进程已经长时间未更新自己的运行状态,因此确定该子进程存在异常,因此立即清除该子进程以完成工作资源的回收,同时生成对该子进程对应的进程内容进行清除的进程清除指令,并将该进程清除指令发送至终端设备E。
进一步地,Master进程还对当前管理的子进程进行实时监控,当监控到子程序执行完成的完成任务信息或子程序执行异常的异常任务信息,即确定该子进程已经执行完成或执行异常,因此立即生成对应的进程清除指令,并将该进程清除指令发送至终端设备E。
终端设备E在获取到上述进程清除指令后,将对应的进程内容从任务关系表中清除,从而完成对该子进程的运行状态的更新。
在本发明实施例中,通过将多个终端设备建立互联,并将一个项目的任务表和任务关系表在多个终端设备之间共享,从而实现一个项目的项目任务在多个终端设备上进行部署并执行的方法,从而有效避免了因某个终端设备出现故障而导致对项目的执行产生中断影响的事故发生,保障了项目的实时、安全和可靠的运行,大大降低了对企业正常运营的影响,避免了因项目执行中断对用户造成的困扰,提高了用户体验。
同时通过本发明技术方案,技术人员还可以将一个项目的多个任务在不同终端设备上进行横向扩展,通过对不同终端设备的资源分配,使得每个项目的运行相比于现有技术能够享有更好的资源,实现更高的运行效率,因此进一步提高了用户体验,提高了企业的经营效益和经营效率。
下面结合附图对本发明实施例所提供的进程的争夺方法进行说明。
请参见图3,基于同一发明构思,本发明实施例提供一种进程的争夺方法,应用于第二终端设备,所述争夺方法包括:
S2100)按照第一预设时间周期发送查询指令;
S2200)获取基于所述查询指令反馈的任务表和任务关系表,其中所述任务表中包括多个任务内容,所述任务关系表中包括与所述多个任务内容对应的多个进程内容;
S2300)基于所述任务表和所述任务关系表判断是否存在待争夺任务;
S2400)若存在所述待争夺任务,则生成并发送对应的争夺信息;
S2500)获取与所述争夺信息对应的争夺结果。
在本发明实施例中,所述按照第一预设时间周期发送查询指令,包括:按照所述第一预设时间周期发送任务表查询指令;判断是否获取到基于所述任务表查询指令反馈的任务表;在获取到所述任务表的情况下,发送任务关系表查询指令。
在本发明实施例中,每个所述任务内容包括任务标识信息、任务名称信息以及任务状态信息,每个所述进程内容包括进程唯一标识信息、所述任务标识信息、进程运行时间信息、所述任务状态信息以及设备地址信息。
在本发明实施例中,所述基于所述任务表和所述任务关系表判断是否存在待争夺任务,包括:获取所述任务表中的第一任务标识信息和所述任务关系表中的第二任务标识信息;判断在所述第一任务标识信息中是否存在与所述第二任务标识信息不匹配的不匹配任务标识信息;若存在所述不匹配任务标识信息,则将与所述不匹配任务标识信息对应的任务内容作为所述待争夺任务。
在本发明实施例中,所述若存在所述待争夺任务,则生成并发送对应的争夺信息,包括:获取与所述待争夺任务对应的待争夺进程信息;启动与所述待争夺进程信息对应的待争夺进程;提取所述待争夺进程信息中的待争夺任务标识信息以及待争夺进程唯一标识信息;将所述待争夺任务标识信息和所述待争夺进程唯一标识信息作为所述争夺信息,发送所述争夺信息。
在本发明实施例中,在所述获取与所述争夺信息对应的争夺结果后,所述争夺方法还包括:若所述争夺结果为争夺成功,则运行所述待争夺进程;若所述争夺结果为争夺失败,则清除所述待争夺进程。
在本发明实施例中,所述争夺方法还包括:按照第二预设时间周期生成对所述任务关系表中的所有进程运行时间信息进行更新的时间更新指令;发送所述时间更新指令。
在本发明实施例中,所述争夺方法还包括:按照第三预设时间周期获取所述任务关系表中每个所述进程内容的进程运行时间信息;获取所述进程运行时间信息与当前时间的运行时间差;判断是否存在运行时间差大于预设时间阈值的未响应进程信息;若存在所述未响应进程信息,则生成并发送与所述未响应进程信息对应的进程清除指令。
在本发明实施例中,所述争夺方法还包括:判断是否存在执行完成的完成任务内容或执行异常的异常任务内容;若存在所述完成任务内容或所述异常任务内容,则生成并发送与所述完成任务内容或所述异常任务内容对应的进程清除指令。
进一步地,本发明实施例还提供一种多点部署的进程管理系统,所述进程管理系统包括第一终端设备和多个第二终端设备,所述第一终端设备加载并执行本发明所述的进程管理方法,所述第二终端设备加载并执行本发明所述的争夺方法。
进一步地,本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明所述的方法。
进一步地,本发明实施例还提供一种服务器,包括:处理器;以及存储设备,存储有计算机程序指令,与所述处理器连接,所述计算机程序指令在所述处理器中加载并执行本发明所述的进程管理方法。
进一步地,本发明实施例还提供一种多点部署的进程管理装置,所述进程管理装置包括:第一生成单元,用于获取所有任务的任务内容,并基于所述任务内容创建任务表;第二生成单元,用于基于所述任务表生成所述任务内容和进程内容的任务关系表;第一反馈单元,用于获取多个查询指令,并反馈所述任务表和/或所述任务关系表;获取单元,用于获取至少一个争夺信息;管理单元,用于基于所述至少一个争夺信息对所述任务关系表进行管理,并生成对应的管理结果;第二反馈单元,用于反馈所述管理结果。
优选地,所述任务表包括至少一个所述任务内容,每个所述任务内容包括任务标识信息、任务名称信息以及任务状态信息,所述任务关系表包括多个所述进程内容,每个所述进程内容包括进程唯一标识信息、所述任务标识信息、进程运行时间信息、所述任务状态信息以及设备地址信息;所述第二生成单元还用于:基于所述任务标识信息生成所述任务内容和进程内容的任务关系表。
优选地,所述争夺信息包括待管理任务标识信息和待管理进程标识信息,所述管理单元包括:原进程获取模块,用于基于所述任务关系表获取与所述待管理任务标识信息对应的原进程唯一标识信息;判断模块,用于判断所述原进程唯一标识信息是否为空值;修改模块,用于若所述原进程唯一标识信息为空值,则基于所述待管理进程标识信息对所述进程唯一标识信息进行修改以获得修改后进程唯一标识信息;成功管理模块,用于基于所述修改后进程唯一标识信息生成新的任务关系表,并生成修改成功的管理结果;失败管理模块,用于若所述原进程唯一标识信息不为空值,则生成修改失败的管理结果。
优选地,所述进程管理装置还包括:更新时间获取单元,用于获取时间更新指令;时间更新单元,用于基于所述时间更新指令对所述进程运行时间信息进行更新,并获得更新后进程运行时间信息;关系表更新单元,用于基于所述更新后进程运行时间信息生成新的任务关系表。
优选地,所述进程管理装置还包括:清除指令获取单元,用于获取进程清除指令;清除单元,用于基于所述进程清除指令对所述任务关系表中对应的进程内容执行清除操作,并生成新的任务关系表。
相应的,本发明还提供一种进程的争夺装置,所述争夺装置包括:查询单元,用于按照第一预设时间周期发送查询指令;接收单元,用于获取基于所述查询指令反馈的任务表和任务关系表,其中所述任务表中包括多个任务内容,所述任务关系表中包括与所述多个任务内容对应的多个进程内容;判断单元,用于基于所述任务表和所述任务关系表判断是否存在待争夺任务;争夺单元,用于若存在所述待争夺任务,则生成并发送对应的争夺信息;结果获取单元,用于获取与所述争夺信息对应的争夺结果。
优选地,所述查询单元包括:任务表查询模块,用于按照所述第一预设时间周期发送任务表查询指令;第一判断模块,用于判断是否获取到基于所述任务表查询指令反馈的任务表;关系表查询模块,用于在获取到所述任务表的情况下,发送任务关系表查询指令。
优选地,每个所述任务内容包括任务标识信息、任务名称信息以及任务状态信息,每个所述进程内容包括进程唯一标识信息、所述任务标识信息、进程运行时间信息、所述任务状态信息以及设备地址信息。
优选地,所述判断单元包括:任务标识获取模块,用于获取所述任务表中的第一任务标识信息和所述任务关系表中的第二任务标识信息;第二判断模块,用于判断在所述第一任务标识信息中是否存在与所述第二任务标识信息不匹配的不匹配任务标识信息;任务确定模块,用于若存在所述不匹配任务标识信息,则将与所述不匹配任务标识信息对应的任务内容作为所述待争夺任务。
优选地,所述争夺单元包括:进程获取模块,用于获取与所述待争夺任务对应的待争夺进程信息;启动模块,用于启动与所述待争夺进程信息对应的待争夺进程;提取模块,用于提取所述待争夺进程信息中的待争夺任务标识信息以及待争夺进程唯一标识信息;争夺模块,用于将所述待争夺任务标识信息和所述待争夺进程唯一标识信息作为所述争夺信息,发送所述争夺信息。
优选地,所述争夺装置还包括:运行模块,用于若所述争夺结果为争夺成功,则运行所述待争夺进程;第一清除模块,用于若所述争夺结果为争夺失败,则清除所述待争夺进程。
优选地,所述争夺装置还包括:更新模块,用于按照第二预设时间周期生成对所述任务关系表中的所有进程运行时间信息进行更新的时间更新指令;发送模块,用于发送所述时间更新指令。
优选地,所述争夺装置还包括:时间获取模块,用于按照第三预设时间周期获取所述任务关系表中每个所述进程内容的进程运行时间信息;时间差获取模块,用于获取所述进程运行时间信息与当前时间的运行时间差;第三判断模块,用于判断是否存在运行时间差大于预设时间阈值的未响应进程信息;第二清除模块,用于若存在所述未响应进程信息,则生成并发送与所述未响应进程信息对应的进程清除指令。
优选地,所述争夺装置还包括:第四判断模块,用于判断是否存在执行完成的完成任务内容或执行异常的异常任务内容;第三清除模块,用于若存在所述完成任务内容或所述异常任务内容,则生成并发送与所述完成任务内容或所述异常任务内容对应的进程清除指令。
以上结合附图详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种简单变型,这些简单变型均属于本发明的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本发明对各种可能的组合方式不再另行说明。
本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得单片机、芯片或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明的思想,其同样应当视为本发明所公开的内容。
Claims (15)
1.一种多点部署的进程管理方法,应用于第一终端设备,其特征在于,第一终端设备用于创建并存储任务表和任务关系表,第二终端设备运行进程,第二终端设备为多个终端设备中除第一终端设备之外的其它终端设备,所述进程管理方法包括:
第一终端设备获取所有任务的任务内容,并基于所述任务内容创建任务表,所述任务表包括至少一个任务内容,每个任务内容包括任务标识信息;
基于所述任务表中的任务标识信息生成所述任务内容和进程内容的任务关系表,所述任务关系表包括与多个任务内容对应的多个进程内容,每个进程内容包括进程唯一标识信息和任务标识信息;
获取多个第二终端设备的查询指令,并反馈所述任务表和/或所述任务关系表;
获取至少一个第二终端设备的争夺信息,所述争夺信息包括待管理任务标识信息和待管理进程标识信息;
基于至少一个争夺信息对所述任务关系表进行管理,并生成对应的管理结果;
反馈所述管理结果;
其中,基于至少一个争夺信息对所述任务关系表进行管理,并生成对应的管理结果,包括:
基于所述任务关系表获取与所述待管理任务标识信息对应的原进程唯一标识信息;
判断所述原进程唯一标识信息是否为空值;
若所述原进程唯一标识信息为空值,则基于所述待管理进程标识信息对所述进程唯一标识信息进行修改以获得修改后进程唯一标识信息;
基于所述修改后进程唯一标识信息生成新的任务关系表,并生成修改成功的管理结果;
若所述原进程唯一标识信息不为空值,则生成修改失败的管理结果。
2.根据权利要求1所述的进程管理方法,其特征在于,每个所述任务内容还包括任务名称信息以及任务状态信息,每个所述进程内容还包括进程运行时间信息、所述任务状态信息以及设备地址信息。
3.根据权利要求2所述的进程管理方法,其特征在于,所述进程管理方法还包括:
获取时间更新指令;
基于所述时间更新指令对所述进程运行时间信息进行更新,并获得更新后进程运行时间信息;
基于所述更新后进程运行时间信息生成新的任务关系表。
4.根据权利要求1所述的进程管理方法,其特征在于,所述进程管理方法还包括:
获取进程清除指令;
基于所述进程清除指令对所述任务关系表中对应的进程内容执行清除操作,并生成新的任务关系表。
5.一种进程的争夺方法,应用于第二终端设备,其特征在于,第二终端设备运行进程,第一终端设备用于创建并存储任务表和任务关系表,第二终端设备为多个终端设备中除第一终端设备之外的其它终端设备,所述争夺方法包括:
第二终端设备按照第一预设时间周期向第一终端设备发送查询指令;
获取第一终端设备基于所述查询指令反馈的任务表和任务关系表,其中所述任务表中包括多个任务内容,每个任务内容包括任务标识信息,所述任务关系表中包括与所述多个任务内容对应的多个进程内容,每个进程内容包括进程唯一标识信息和任务标识信息;
基于所述任务表和所述任务关系表判断是否存在待争夺任务;
若存在所述待争夺任务,则生成并发送对应的争夺信息;
获取与所述争夺信息对应的争夺结果;
其中,基于所述任务表和所述任务关系表判断是否存在待争夺任务,包括:获取所述任务表中的第一任务标识信息和所述任务关系表中的第二任务标识信息;判断在所述第一任务标识信息中是否存在与所述第二任务标识信息不匹配的不匹配任务标识信息;若存在所述不匹配任务标识信息,则将与所述不匹配任务标识信息对应的任务内容作为所述待争夺任务。
6.根据权利要求5所述的争夺方法,其特征在于,所述第二终端设备按照第一预设时间周期向第一终端设备发送查询指令,包括:
按照所述第一预设时间周期发送任务表查询指令;
判断是否获取到基于所述任务表查询指令反馈的任务表;
在获取到所述任务表的情况下,发送任务关系表查询指令。
7.根据权利要求5所述的争夺方法,其特征在于,每个所述任务内容还包括任务名称信息以及任务状态信息,每个所述进程内容还包括进程运行时间信息、所述任务状态信息以及设备地址信息。
8.根据权利要求7所述的争夺方法,其特征在于,所述若存在所述待争夺任务,则生成并发送对应的争夺信息,包括:
获取与所述待争夺任务对应的待争夺进程信息;
启动与所述待争夺进程信息对应的待争夺进程;
提取所述待争夺进程信息中的待争夺任务标识信息以及待争夺进程唯一标识信息;
将所述待争夺任务标识信息和所述待争夺进程唯一标识信息作为所述争夺信息,发送所述争夺信息。
9.根据权利要求8所述的争夺方法,其特征在于,在所述获取与所述争夺信息对应的争夺结果后,所述争夺方法还包括:
若所述争夺结果为争夺成功,则运行所述待争夺进程;
若所述争夺结果为争夺失败,则清除所述待争夺进程。
10.根据权利要求7所述的争夺方法,其特征在于,所述争夺方法还包括:
按照第二预设时间周期生成对所述任务关系表中的所有进程运行时间信息进行更新的时间更新指令;
发送所述时间更新指令。
11.根据权利要求7所述的争夺方法,其特征在于,所述争夺方法还包括:
按照第三预设时间周期获取所述任务关系表中每个所述进程内容的进程运行时间信息;
获取所述进程运行时间信息与当前时间的运行时间差;
判断是否存在运行时间差大于预设时间阈值的未响应进程信息;
若存在所述未响应进程信息,则生成并发送与所述未响应进程信息对应的进程清除指令。
12.根据权利要求5所述的争夺方法,其特征在于,所述争夺方法还包括:
判断是否存在执行完成的完成任务内容或执行异常的异常任务内容;
若存在所述完成任务内容或所述异常任务内容,则生成并发送与所述完成任务内容或所述异常任务内容对应的进程清除指令。
13.一种多点部署的进程管理系统,其特征在于,所述进程管理系统包括第一终端设备和多个第二终端设备,所述第一终端设备加载并执行权利要求1-4中任一权利要求所述的进程管理方法,所述第二终端设备加载并执行权利要求5-12中任一权利要求所述的争夺方法。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-12中任一项权利要求所述的方法。
15.一种服务器,包括:
处理器;以及
存储设备,存储有计算机程序指令,与所述处理器连接,所述计算机程序指令在所述处理器中加载并执行权利要求1-12中任一权利要求所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910755540.3A CN110569115B (zh) | 2019-08-15 | 2019-08-15 | 多点部署的进程管理方法及进程的争夺方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910755540.3A CN110569115B (zh) | 2019-08-15 | 2019-08-15 | 多点部署的进程管理方法及进程的争夺方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110569115A CN110569115A (zh) | 2019-12-13 |
CN110569115B true CN110569115B (zh) | 2023-08-04 |
Family
ID=68775620
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910755540.3A Active CN110569115B (zh) | 2019-08-15 | 2019-08-15 | 多点部署的进程管理方法及进程的争夺方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110569115B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111782380B (zh) * | 2020-08-06 | 2023-03-17 | Oppo(重庆)智能科技有限公司 | 应用运行控制方法、装置、电子装置及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1670705A (zh) * | 2004-03-16 | 2005-09-21 | 联想(北京)有限公司 | 一种对机群实现集中并发管理的方法 |
CN1926516A (zh) * | 2004-03-31 | 2007-03-07 | 丰田自动车株式会社 | 任务执行系统 |
US20080244582A1 (en) * | 2007-03-31 | 2008-10-02 | Brown William E | WEB-Based Task Management System and Method |
CN107133086A (zh) * | 2016-02-29 | 2017-09-05 | 阿里巴巴集团控股有限公司 | 基于分布式系统的任务处理方法、装置和系统 |
CN107329820A (zh) * | 2016-04-28 | 2017-11-07 | 杭州海康威视数字技术股份有限公司 | 一种用于集群系统的任务处理方法及装置 |
CN108304255A (zh) * | 2017-12-29 | 2018-07-20 | 北京城市网邻信息技术有限公司 | 分布式任务调度方法及装置、电子设备及可读存储介质 |
-
2019
- 2019-08-15 CN CN201910755540.3A patent/CN110569115B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1670705A (zh) * | 2004-03-16 | 2005-09-21 | 联想(北京)有限公司 | 一种对机群实现集中并发管理的方法 |
CN1926516A (zh) * | 2004-03-31 | 2007-03-07 | 丰田自动车株式会社 | 任务执行系统 |
US20080244582A1 (en) * | 2007-03-31 | 2008-10-02 | Brown William E | WEB-Based Task Management System and Method |
CN107133086A (zh) * | 2016-02-29 | 2017-09-05 | 阿里巴巴集团控股有限公司 | 基于分布式系统的任务处理方法、装置和系统 |
CN107329820A (zh) * | 2016-04-28 | 2017-11-07 | 杭州海康威视数字技术股份有限公司 | 一种用于集群系统的任务处理方法及装置 |
CN108304255A (zh) * | 2017-12-29 | 2018-07-20 | 北京城市网邻信息技术有限公司 | 分布式任务调度方法及装置、电子设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110569115A (zh) | 2019-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3125117A1 (en) | Update management system and update management method | |
EP3244569A1 (en) | Asset information management method and device | |
CN107329820B (zh) | 一种用于集群系统的任务处理方法及装置 | |
CN110611707B (zh) | 一种任务调度的方法及装置 | |
US20090013209A1 (en) | Apparatus for connection management and the method therefor | |
CN109656569B (zh) | 多环境应用部署方法、设备、存储介质及装置 | |
US20210406127A1 (en) | Method to orchestrate a container-based application on a terminal device | |
CN107168777B (zh) | 分布式系统中资源的调度方法以及装置 | |
CN111431970B (zh) | 基于微服务架构的资源分配方法、装置、设备及存储介质 | |
EP3402123B1 (en) | Method and apparatus for transmitting request message | |
CN113835844A (zh) | 一种容器集群的管理方法、装置及云计算平台 | |
CN110569115B (zh) | 多点部署的进程管理方法及进程的争夺方法 | |
CN100576805C (zh) | 对象补救系统及方法 | |
CN115168031A (zh) | 一种雾计算系统、方法、电子设备及存储介质 | |
CN112631756A (zh) | 一种应用于航天测控软件的分布式调控方法及装置 | |
CN111767122A (zh) | 分布式任务调度管理方法和装置 | |
CN108243205A (zh) | 一种用于控制云平台资源分配的方法、设备与系统 | |
CN107122251B (zh) | 一种业务子卡管理方法及装置 | |
CN113220480B (zh) | 分布式的数据任务跨云调度系统及方法 | |
CN115509714A (zh) | 一种任务处理方法、装置、电子设备及存储介质 | |
CN113535402A (zh) | 基于5g mec的负载均衡处理方法、装置及电子设备 | |
CN109101260B (zh) | 一种节点软件的升级方法、装置和计算机可读存储介质 | |
CN109634749B (zh) | 一种分布式统一调度方法及设备 | |
CN114157569A (zh) | 集群系统及其构建方法和构建装置 | |
CN113032188A (zh) | 确定主服务器的方法、装置、服务器及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |