CN109862101B - 跨平台应用启动方法、装置、计算机设备和存储介质 - Google Patents
跨平台应用启动方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN109862101B CN109862101B CN201910116919.XA CN201910116919A CN109862101B CN 109862101 B CN109862101 B CN 109862101B CN 201910116919 A CN201910116919 A CN 201910116919A CN 109862101 B CN109862101 B CN 109862101B
- Authority
- CN
- China
- Prior art keywords
- job
- scheduling server
- jobs
- execution
- target application
- 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
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本申请提供了一种跨平台应用启动方法、装置、计算机设备和存储介质,其中,该方法包括:调度服务器接收目标应用启动指令;响应于目标应用启动指令,调度服务器获取目标应用启动流程中的作业集中各作业的执行顺序,其中,目标应用启动流程中的作业集中的多个作业位于多个作业服务器;调度服务器根据执行顺序,对多个作业服务器进行调度,以执行作业集中的多个作业;在作业集中的多个作业均执行成功后,调度服务器向客户端返回目标应用启动完成信息。上述跨平台应用启动方法,通过调度服务器调度多个作业服务器以执行应用启动流程中的多个作业,无需人工干预,可以实现跨平台应用的启动,提高应用启动效率、降低人力成本。
Description
技术领域
本申请涉及计算机技术领域,特别涉及一种跨平台应用启动方法、装置、计算机设备和存储介质。
背景技术
目前,银行业务系统种类繁多,涉及的系统平台多样,产品丰富,业务复杂,在数据灾备后,需对产品进行应用验证来保证数据备份的可用性。在进行验证之前,需要启动各应用服务。单个应用服务的启动可能需要执行分布在多个作业服务器上的多个作业来完成。
现有作业调度方式通过在该服务器上执行记录在数据库中的命令,根据数据库配置的作业关系,在该服务器上执行可执行作业。然而,该方法仅适用于在单个服务器上进行作业调度,对于一些服务器为集群环境且多个服务器上的作业间有依赖关系则不适用。对于这种分布在不同服务器上且服务器之间有依赖关系的应用启动,需要人工完成确认后,才能顺利启动完成。
针对上述问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种跨平台应用启动方法、装置、计算机设备和存储介质,以解决现有技术中涉及分布在多个作业服务器上的多个作业的应用启动需要人工干预且效率低的问题。
本申请实施例提供了一种跨平台应用启动方法,包括:调度服务器接收目标应用启动指令;响应于目标应用启动指令,调度服务器获取目标应用启动流程中的作业集中各作业的执行顺序,其中,目标应用启动流程中的作业集中的多个作业位于多个作业服务器;调度服务器根据执行顺序,对多个作业服务器进行调度,以执行作业集中的多个作业;在作业集中的多个作业均执行成功后,调度服务器向客户端返回目标应用启动完成信息。
在一个实施例中,调度服务器获取目标应用启动流程中的作业集中各作业的执行顺序,包括:调度服务器确定目标应用当前所处的场景;调度服务器根据目标应用当前所处的场景,获取目标应用启动流程中的作业集中各作业间依赖关系,其中,作业集中各作业间依赖关系包括同一作业服务器上多个作业之间的依赖关系和不同作业服务器上多个作业之间的依赖关系;调度服务器根据作业集中各作业间依赖关系确定作业集中各作业的执行顺序。
在一个实施例中,调度服务器根据执行顺序,对多个作业服务器进行调度,以执行作业集中的多个作业,包括:重复以下步骤直至获得的作业执行结果为失败或者直至调度服务器连续确定作业集中不存在状态为可执行的作业的次数达到预设次数:调度服务器获取作业集中各作业的状态;调度服务器确定作业集中是否存在状态为可执行的作业;在确定存在状态为可执行的作业的情况下,调度服务器调度该状态为可执行的作业对应的作业服务器以执行该作业;调度服务器获取作业执行结果;在作业执行结果为执行成功的情况下,调度服务器根据执行顺序更新作业集中各作业的状态。
在一个实施例中,在调度服务器获取作业执行结果之后,还包括:在作业执行结果为执行失败的情况下,调度服务器结束目标应用启动流程并向客户端返回目标应用启动失败信息。
在一个实施例中,在作业执行结果为执行成功的情况下,调度服务器根据执行顺序更新作业集中各作业的状态,包括:调度服务器将执行成功的作业的状态置为执行成功;调度服务器确定在执行顺序中是否存在位于该执行成功的作业的下一节点的作业;在确定在执行顺序中存在位于该执行成功的作业的下一节点的作业的情况下,调度服务器将执行顺序中位于该执行成功的作业的下一节点的作业的状态更新为可执行。
在一个实施例中,在调度服务器确定在执行顺序中是否存在位于该执行成功的作业的下一节点的作业之后,还包括:在确定在执行顺序中不存在位于该执行成功的作业的下一节点的作业的情况下,调度服务器确定作业集中的多个作业均执行成功。
在一个实施例中,在调度服务器调度该状态为可执行的作业对应的作业服务器以执行该作业之后,还包括:调度服务器获取作业执行日志;调度服务器将获得的作业执行日志返回至客户端。
在一个实施例中,调度服务器调度该状态为可执行的作业对应的作业服务器以执行该作业,包括:调度服务器获取该状态为可执行的作业对应的作业服务器的IP地址、用户名和密码;调度服务器根据IP地址、用户名和密码登录作业服务器;调度服务器根据作业信息调度作业服务器以执行该状态为可执行的作业。
本申请实施例还提供了一种跨平台应用启动装置,包括:接收模块,用于接收目标应用启动指令;获取模块,用于响应于目标应用启动指令,获取目标应用启动流程中的作业集中各作业的执行顺序,其中,目标应用启动流程中的作业集中的多个作业位于多个作业服务器;调度模块,用于根据执行顺序,对多个作业服务器进行调度,以执行作业集中的多个作业;返回模块,用于在作业集中的多个作业均执行成功后,向客户端返回目标应用启动完成信息。
本发明实施例还提供一种计算机设备,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现上述任意实施例中所述的跨平台应用启动方法的步骤。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现上述任意实施例中所述的跨平台应用启动方法的步骤。
在本申请实施例中,提供了一种跨平台应用启动方法,通过调度服务器接收目标应用启动指令并响应于该指令获取目标启动流程中的作业集中各作业的执行顺序,其中作业集中的多个作业位于多个作业服务器,然后通过调度服务器根据作业执行顺序调度作业服务器以执行作业集中的多个作业,并在多个作业均执行成功后,完成目标应用的启动,并返回应用启动完成信息。上述实施例中的跨平台应用启动方法,通过调度服务器调度多个作业服务器以执行应用启动流程中的多个作业,无需人工干预,可以实现跨平台应用的启动,提高应用启动效率、降低人力成本。此外,通过调度服务器调度多个作业服务器,可以支持操作系统不同的多个作业服务器上的作业的调度控制,实现跨平台跨操作系统的应用启动,定义不同操作系统的作业,统一调度自动切换连接接口,实现集中统一的作业调度和作业控制。通过上述方案解决了现有的跨平台应用启动方法的效率低下、人力成本高的技术问题,达到了有效提升应用启动效率、降低人力成本的技术效果。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,并不构成对本申请的限定。在附图中:
图1示出了本申请一实施例中的跨平台应用启动方法的流程图;
图2示出了本申请一实施例中的作业执行顺序的示意图;
图3示出了本申请一实施例中的跨平台应用启动方法的顺序图;
图4示出了本申请一实施例中的跨平台应用启动装置的示意图;
图5示出了本申请一实施例中的计算机设备的示意图。
具体实施方式
下面将参考若干示例性实施方式来描述本申请的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本申请,而并非以任何方式限制本申请的范围。相反,提供这些实施方式是为了使本申请公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
本领域的技术人员知道,本申请的实施方式可以实现为一种系统、装置设备、方法或计算机程序产品。因此,本申请公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
本发明实施例提供了一种跨平台应用启动方法,如图1所示,可以包括以下步骤:
步骤S101,调度服务器接收目标应用启动指令。
具体地,当用户在客户端输入应用启动操作时,客户端响应于该操作向调度服务器发送目标应用启动指令,调度服务器从客户端接收目标应用启动指令。其中,上述调度服务器可以是单一的服务器,也可以是服务器集群,或者是云服务器等都可以,具体的组成形成本申请不作限定。上述客户端可以是台式电脑、笔记本、手机终端、PDA等,只要是可以向用户或者业务人员进行内容展示和接收操作指令的设备都可以,对于客户端的呈现形成,本申请也不作限定。
步骤S102,响应于目标应用启动指令,调度服务器获取目标应用启动流程中的作业集中各作业的执行顺序,其中,目标应用启动流程中的作业集中的多个作业位于多个作业服务器。
一般地,在调度服务器接收到目标应用启动指令后,目标应用启动指令中携带有要启动的目标应用的应用标识。根据该应用标识,调度服务器获取目标应用启动流程中的作业集中各作业的执行顺序。其中,目标应用启动流程中的作业集中的多个作业位于多个作业服务器上。
步骤S103,调度服务器根据执行顺序,对多个作业服务器进行调度,以执行作业集中的多个作业。
具体地,在获取目标应用启动流程中各作业的执行顺序后,调度服务器根据执行顺序,对多个作业服务器进行调度,以执行作业集中的多个作业。其中,作业执行顺序包括先后顺序和并行顺序,即有些作业可以并行执行,在作业并行执行时,调度服务器可以同时调度多个作业服务器以执行并行的多个作业。
步骤S104,在作业集中的多个作业均执行成功后,调度服务器向客户端返回目标应用启动完成信息。
具体地,在作业集中的多个作业均执行成功后,调度服务器向客户端返回目标应用启动完成信息,客户端向用户展示目标应用启动完成通知,从而实现跨平台应用的启动。
上述实施例中的跨平台应用启动方法,通过调度服务器调度多个作业服务器以执行应用启动流程中的多个作业,无需人工干预,可以实现跨平台应用的启动,提高应用启动效率、降低人力成本。此外,通过调度服务器调度多个作业服务器,可以支持操作系统不同的多个作业服务器上的作业的调度控制,实现跨平台跨操作系统的应用启动,定义不同操作系统的作业,统一调度自动切换连接接口,实现集中统一的作业调度和作业控制。通过上述方案解决了现有的跨平台应用启动方法的效率低下、人力成本高的技术问题,达到了有效提升应用启动效率、降低人力成本的技术效果。
进一步地,考虑到应用启动流程的作业集中的各作业之间存在依赖关系,而且在不同的场景下,应用启动流程中所包含的作业不同,作业间的依赖关系也不同,而作业执行顺序需要根据作业间依赖关系来确定。因此,在本申请一些实施例中,调度服务器获取目标应用启动流程中的作业集中各作业的执行顺序,可以包括:调度服务器确定目标应用当前所处的场景;调度服务器根据目标应用当前所处的场景,获取目标应用启动流程中的作业集中各作业间依赖关系,其中,作业集中各作业间依赖关系包括同一作业服务器上多个作业之间的依赖关系和不同作业服务器上多个作业之间的依赖关系;调度服务器根据作业集中各作业间依赖关系确定作业集中各作业的执行顺序。
具体地,调度服务器确定目标应用当前所处的场景,其中,当前所处的场景可以包括但不限于:夜间模式和联机模式。在确定目标应用当前所处的场景之后,根据目标应用当前所处的场景,获取目标应用启动流程中的作业集中各作业间依赖关系。其中,不同的场景可以对应不同的作业集,可以对应不同的作业间依赖关系。其中,各作业间依赖关系可以包括同一作业服务器上不同作业之间的依赖关系,也可以包括不同作业服务器上不同作业之间的依赖关系。例如,现有A和B两台作业服务器,A作业服务器有甲乙两个任务,B作业服务器上有丙丁两个任务,完成所有的任务需要满足如下条件,只有在A作业服务器完成甲任务,B作业服务器才能才开始丙任务,乙任务需要在丙任务完成后才能开始,丁任务需在乙任务完成后才能开始。在获取目标应用启动流程中的作业集中各作业间依赖关系之后,根据作业间依赖关系,调度服务器确定目标应用启动流程中的作业集中各作业的执行顺序。其中,作业依赖关系除了一般先后顺序外,还有脚本不同返回结果对应不同分支的关系,多种依赖关系同时存在,匹配不同场景。此外,还可以提供调度服务器与系统层启动信息的对接接口,系统层启动完成信息自动作为应用启动的依赖关系或触发条件。
请参考图2,示出了本申请实施例中的作业执行顺序的示意图。如图2所示,开始后,先确定目标应用所处的场景,当目标应用处于夜间模式时,执行作业B既可以完成应用的启动;当目标应用处于联机模式时,执行作业A1,然后并行执行作业A21和作业A22,待作业A21和作业A22执行完成后,即可完成应用的启动。上述作业执行顺序仅是示例性的,在实际实现中,可以有两个以上的场景,每个场景下有大量的存在依赖关系的作业。
示例性地,根据作业间依赖关系确定作业执行顺序,可以是,将没有前提作业的作业置为开始作业,将依赖该开始作业并且没有其他前提作业的作业置为开始作业下一节点的作业,将依赖开始作业下一节点的作业并且没有其他前提作业或者有其他前提作业但其他前提作业均已执行完成的作业置为再下一个节点的作业,依次类推。
在其他实施例中,还可以按照其他规则来根据作业间依赖关系确定作业执行顺序,本申请对此不作限定。例如,还可以考虑系统并发度、系统资源等具体情况来根据作业间依赖关系确定作业执行顺序。示例性地,在目标应用启动流程中涉及的作业服务器个数过多的情况下,对于这种情况,可以采用分组的方式调度作业服务器执行作业,从而控制系统的并发度。进一步地,当调度服务器接收到多个目标应用启动指令时,可以并行启动多个目标应用,并根据实际情况实现多应用排队和多作业排队功能等。
上述实施例中的跨平台应用启动方法,可以根据不同场景和不同的作业依赖关系确定作业执行顺序,从而可以实现不同场景和不同作业间依赖关系的情况下完成目标应用的启动,适用于应用启动流程中的作业位于不同作业服务器并且各作业服务器上的作业有依赖关系的跨平台应用的启动,无需人工干预,有效提高了跨平台应用的启动效率。
进一步地,在本申请一些实施例中,调度服务器根据执行顺序,对多个作业服务器进行调度,以执行作业集中的多个作业,可以包括:重复以下步骤直至获得的作业执行结果为失败或者直至调度服务器连续确定作业集中不存在状态为可执行的作业的次数达到预设次数:调度服务器获取作业集中各作业的状态;调度服务器确定作业集中是否存在状态为可执行的作业;在确定存在状态为可执行的作业的情况下,调度服务器调度该状态为可执行的作业对应的作业服务器以执行该作业;调度服务器获取作业执行结果;在作业执行结果为执行成功的情况下,调度服务器根据执行顺序更新作业集中各作业的状态。
具体地,在执行作业之前,获取目标应用启动流程中的作业集中各作业的状态,其中,作业的状态可以包括但不限于:执行成功、可执行和不可执行。可以将作业集中处于作业执行顺序第一个节点的作业的状态置为可执行,其他作业的状态均置为不可执行。在获取各作业的状态后,确定是否存在状态为可执行的作业。在确定存在作业为可执行的作业的情况下,调度服务器调度对应的作业服务器,以执行该作业。然后,调度服务器获取作业执行结果,在作业执行结果为执行成功的情况下,调度服务器根据执行顺序更新作业集中各作业的状态。重复上述步骤直至获得的作业执行结果为执行失败或者直至连续确定不存在状态为可执行的作业的次数达到预设次数。其中,预设次数可以5次,即在连续5次确定不存在可执行作业的情况下,结束流程。例如,在连续5次确定不存在可执行作业的情况下,可以作业集中的多个作业均已成功执行,目标应用已启动成功。
上述实施例中的跨平台应用启动方法,调度服务器根据作业执行顺序和作业执行结果来更新作业集中各作业的状态,进而根据作业状态调度作业服务器执行作业集中各作业,使得能够调度控制存在依赖关系的多个作业的执行,实现跨平台应用的启动。
进一步地,考虑到在作业执行失败的情况下,可以结束流程并返回应用启动失败通知。因此,在本申请一些实施例中,在调度服务器获取作业执行结果之后,还可以包括:在作业执行结果为执行失败的情况下,调度服务器结束目标应用启动流程并向客户端返回目标应用启动失败信息。通过上述方式,可以及时向用户反映应用启动情况,便于用户及时处理。
进一步地,在本申请一些实施例中,在作业执行结果为执行成功的情况下,调度服务器根据执行顺序更新作业集中各作业的状态,可以包括:调度服务器将执行成功的作业的状态置为执行成功;调度服务器确定在执行顺序中是否存在位于该执行成功的作业的下一节点的作业;在确定在执行顺序中存在位于该执行成功的作业的下一节点的作业的情况下,调度服务器将执行顺序中位于该执行成功的作业的下一节点的作业的状态更新为可执行。通过上述方式,可以根据执行结果根据执行顺序更新各作业的状态,从而按照作业顺序依次执行各作业,实现目标应用的启动。
进一步地,在确定作业执行顺序中的最后一个节点中的作业执行成功的情况下,可以确定作业集中的多个作业均执行成功。因此,在本申请一些实施例中,在调度服务器确定在执行顺序中是否存在位于该执行成功的作业的下一节点的作业之后,还可以包括:在确定在执行顺序中不存在位于该执行成功的作业的下一节点的作业的情况下,调度服务器确定作业集中的多个作业均执行成功。通过上述方式,可以及时确定目标应用是否已启动完成,从而及时向客户端返回作业应用启动完成信息。
为了让用户在客户端更好地了解目标应用启动的进度以及各作业的执行情况,可以在客户端展示作业执行日志,而且便于用户根据作业执行日志进行后续处理。因此,在本申请一些实施例中,在调度服务器调度该状态为可执行的作业对应的作业服务器以执行该作业之后,还可以包括:调度服务器获取作业执行日志;调度服务器将获得的作业执行日志返回至客户端。通过上述方式,通过获取作业执行日志并返回给客户端,可以改善用户体验,方便用户了解应用启动进程以及各作业的执行情况,有利于用户进行后续处理。在其他实施例中,调度服务器还可以向客户端返回应用启动开始时间和结束时间,自动计算启动时间并返回应用启动进度。这样,用户可通过客户端了解应用的启动情况,无需人工记录时间及汇报完成情况,大大降低沟通成本。
进一步地,在本申请一些实施例中,调度服务器调度该状态为可执行的作业对应的作业服务器以执行该作业,可以包括:调度服务器获取该状态为可执行的作业对应的作业服务器的IP地址、用户名和密码;调度服务器根据IP地址、用户名和密码登录作业服务器;调度服务器根据作业信息调度作业服务器以执行该状态为可执行的作业。通过上述方式,无需用户手工登录即可登录作业服务器执行作业,进而启动目标应用,减少手工操作时间,提高应用启动效率。
下面结合一个具体实施例对上述方法进行说明,然而,值得注意的是,该具体实施例仅是为了更好地说明本申请,并不构成对本申请的不当限定。
请参考图3,示出了将上述跨平台应用启动方法应用于灾难恢复时的跨平台应用启动的顺序图。如图3所示,该方法可以包括以下步骤:
步骤1,当用户输入目标应用启动操作时,客户端向调度服务器发送应用启动指令;
步骤2,调度服务器确定目标应用当前所处的场景,根据所处场景获取作业间依赖关系,并根据作业间依赖关系确定作业执行顺序;
步骤3,调度作业服务器执行作业执行顺序中的开始作业;
步骤4,作业服务器向调度服务器返回作业执行结果和作业执行日志;
步骤5,调度服务器将作业执行日志返回给客户端,客户端向用户展示作业执行日志或者用户可以选择查看作业执行日志;
步骤6,在执行成功的情况下,调度服务器根据作业执行顺序更新作业状态;
步骤7,调度服务器确定是否存在状态为可执行的作业;
步骤8,在存在可执行作业的情况下,调度服务器调度作业服务器执行该可执行作业,返回步骤4,若不存在可执行作业,则连续确定5次,若连续5次均不存在可执行作业,则结束流程;
步骤9,确定应用是否启动完成,可以包括但不限于:确定当前执行成功的作业是否为结束作业,若是则启动完成,返回应用启动完成信息;在执行失败的情况下,结束流程并返回应用启动失败信息;
步骤10,客户端向用户展示应用启动完成或失败信息。
上述跨平台应用启动方法,通过调度服务器调度多个作业服务器以执行应用启动流程中的多个作业,无需人工干预,可以实现跨平台应用的启动,提高应用启动效率、降低人力成本。通过上述方法,可一个人并行调起多个应用启动,减少系统启动前等待时间,大大缩短RTO,同时可减少人力,节省人力资源成本。此外,上述方法中的客户端中可以显示基础环境启动情况,应用启动情况,记录应用启动开始时间和结束时间,自动计算启动时间,用户可通过平台了解应用的启动情况,无需人工记录时间,汇报完成情况,大大降低沟通成本。此外,通过调度服务器调度多个作业服务器,可以支持操作系统不同的多个作业服务器上的作业的调度控制,实现跨平台跨操作系统的应用启动,定义不同操作系统的作业,统一调度自动切换连接接口,实现集中统一的作业调度和作业控制。通过上述方案解决了现有的跨平台应用启动方法的效率低下、人力成本高的技术问题,达到了有效提升应用启动效率、降低人力成本的技术效果。
基于同一发明构思,本申请实施例中还提供了一种跨平台应用启动装置,如下面的实施例所述。由于跨平台应用启动装置解决问题的原理与跨平台应用启动方法相似,因此跨平台应用启动装置的实施可以参见跨平台应用启动方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。图4是本申请实施例的跨平台应用启动装置的一种结构框图,该装置位于调度服务器中,如图4所示,可以包括:接收模块401、获取模块402、调度模块403和返回模块404,下面对该结构进行说明。
接收模块401用于接收目标应用启动指令。
获取模块402用于响应于目标应用启动指令,获取目标应用启动流程中的作业集中各作业的执行顺序,其中,目标应用启动流程中的作业集中的多个作业位于多个作业服务器。
调度模块403用于根据执行顺序,对多个作业服务器进行调度,以执行作业集中的多个作业。
返回模块404用于在作业集中的多个作业均执行成功后,向客户端返回目标应用启动完成信息。
在本申请一些实施例中,获取模块402具体可以用于:确定目标应用当前所处的场景;根据目标应用当前所处的场景,获取目标应用启动流程中的作业集中各作业间依赖关系,其中,作业集中各作业间依赖关系包括同一作业服务器上多个作业之间的依赖关系和不同作业服务器上多个作业之间的依赖关系;根据作业集中各作业间依赖关系确定作业集中各作业的执行顺序。
在本申请一些实施例中,调度模块403可以具体用于:重复以下步骤直至获得的作业执行结果为失败或者直至连续确定作业集中不存在状态为可执行的作业的次数达到预设次数:获取作业集中各作业的状态;确定作业集中是否存在状态为可执行的作业;在确定存在状态为可执行的作业的情况下,调度该状态为可执行的作业对应的作业服务器以执行该作业;获取作业执行结果;在作业执行结果为执行成功的情况下,根据执行顺序更新作业集中各作业的状态。
在本申请一些实施例中,调度模块403还可以具体用于:在获取作业执行结果之后,在作业执行结果为执行失败的情况下,结束目标应用启动流程并向客户端返回目标应用启动失败信息。
在本申请一些实施例中,在作业执行结果为执行成功的情况下,根据执行顺序更新作业集中各作业的状态,可以包括:将执行成功的作业的状态置为执行成功;确定在执行顺序中是否存在位于该执行成功的作业的下一节点的作业;在确定在执行顺序中存在位于该执行成功的作业的下一节点的作业的情况下,将执行顺序中位于该执行成功的作业的下一节点的作业的状态更新为可执行。
在本申请一些实施例中,在确定在执行顺序中是否存在位于该执行成功的作业的下一节点的作业之后,还可以包括:在确定在执行顺序中不存在位于该执行成功的作业的下一节点的作业的情况下,确定作业集中的多个作业均执行成功。
在本申请一些实施例中,在调度该状态为可执行的作业对应的作业服务器以执行该作业之后,还可以包括:获取作业执行日志;将获得的作业执行日志返回至客户端。
在本申请一些实施例中,调度该状态为可执行的作业对应的作业服务器以执行该作业,可以包括:获取该状态为可执行的作业对应的作业服务器的IP地址、用户名和密码;根据IP地址、用户名和密码登录作业服务器;根据作业信息调度作业服务器以执行该状态为可执行的作业。
从以上的描述中,可以看出,本申请实施例实现了如下技术效果:上述实施例中的跨平台应用启动方法,通过调度服务器调度多个作业服务器以执行应用启动流程中的多个作业,无需人工干预,可以实现跨平台应用的启动,提高应用启动效率、降低人力成本。而且,当接收到多个目标应用启动指令时,调度服务器可以并行启动多个应用,实现一个人并行调起多个应用的启动,减少系统启动前的等待时间,大大缩短RTO,同时可以减少人力,节约人力资源成本。此外,通过调度服务器调度多个作业服务器,可以支持操作系统不同的多个作业服务器上的作业的调度控制,实现跨平台跨操作系统的应用启动,定义不同操作系统的作业,统一调度自动切换连接接口,实现集中统一的作业调度和作业控制。通过上述方案解决了现有的跨平台应用启动方法的效率低下、人力成本高的技术问题,达到了有效提升应用启动效率、降低人力成本的技术效果。
本申请实施方式还提供了一种计算机设备,具体可以参阅图5所示的基于本申请实施例提供的跨平台应用启动方法的计算机设备组成结构示意图,所述计算机设备具体可以包括输入设备51、处理器52、存储器53。其中,所述存储器53用于存储处理器可执行指令。所述处理器52执行所述指令时实现上述任意实施例中所述的跨平台应用启动方法的步骤。所述输入设备51具体可以用于目标应用启动操作、作业执行顺序或作业间依赖关系等。
在本实施方式中,所述输入设备具体可以是用户和计算机系统之间进行信息交换的主要装置之一。所述输入设备可以包括键盘、鼠标、摄像头、扫描仪、光笔、手写输入板、语音输入装置等;输入设备用于把原始数据和处理这些数的程序输入到计算机中。所述输入设备还可以获取接收其他模块、单元、设备传输过来的数据。所述处理器可以按任何适当的方式实现。例如,处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式等等。所述存储器具体可以是现代信息技术中用于保存信息的记忆设备。所述存储器可以包括多个层次,在数字系统中,只要能保存二进制数据的都可以是存储器;在集成电路中,一个没有实物形式的具有存储功能的电路也叫存储器,如RAM、FIFO等;在系统中,具有实物形式的存储设备也叫存储器,如内存条、TF卡等。
在本实施方式中,该计算机设备具体实现的功能和效果,可以与其它实施方式对照解释,在此不再赘述。
本申请实施方式中还提供了一种基于跨平台应用启动方法的计算机存储介质,所述计算机存储介质存储有计算机程序指令,在所述计算机程序指令被执行时实现上述任意实施例中所述跨平台应用启动方法的步骤。
在本实施方式中,上述存储介质包括但不限于随机存取存储器(Random AccessMemory,RAM)、只读存储器(Read-Only Memory,ROM)、缓存(Cache)、硬盘(Hard DiskDrive,HDD)或者存储卡(Memory Card)。所述存储器可以用于存储计算机程序指令。网络通信单元可以是依照通信协议规定的标准设置的,用于进行网络连接通信的接口。
在本实施方式中,该计算机存储介质存储的程序指令具体实现的功能和效果,可以与其它实施方式对照解释,在此不再赘述。
显然,本领域的技术人员应该明白,上述的本申请实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请实施例不限制于任何特定的硬件和软件结合。
应该理解,以上描述是为了进行图示说明而不是为了进行限制。通过阅读上述描述,在所提供的示例之外的许多实施方式和许多应用对本领域技术人员来说都将是显而易见的。因此,本申请的范围不应该参照上述描述来确定,而是应该参照前述权利要求以及这些权利要求所拥有的等价物的全部范围来确定。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请实施例可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种跨平台应用启动方法,其特征在于,包括:
调度服务器接收目标应用启动指令;
响应于所述目标应用启动指令,所述调度服务器获取所述目标应用启动流程中的作业集中各作业的执行顺序,其中,所述目标应用启动流程中的作业集中的多个作业位于多个作业服务器,其中,所述多个作业服务器的操作系统不同;
所述调度服务器根据所述执行顺序,对所述多个作业服务器进行调度,以执行所述作业集中的多个作业;
在所述作业集中的多个作业均执行成功后,所述调度服务器向客户端返回所述目标应用启动完成信息;
其中,所述调度服务器获取所述目标应用启动流程中的作业集中各作业的执行顺序,包括:
所述调度服务器确定所述目标应用当前所处的场景;
所述调度服务器根据所述目标应用当前所处的场景,获取所述目标应用启动流程中的作业集中各作业间依赖关系,其中,所述作业集中各作业间依赖关系包括同一作业服务器上多个作业之间的依赖关系和不同作业服务器上多个作业之间的依赖关系;
所述调度服务器根据所述作业集中各作业间依赖关系确定所述作业集中各作业的执行顺序。
2.根据权利要求1所述的方法,其特征在于,所述调度服务器根据所述执行顺序,对所述多个作业服务器进行调度,以执行所述作业集中的多个作业,包括:
重复以下步骤直至获得的作业执行结果为失败或者直至所述调度服务器连续确定所述作业集中不存在状态为可执行的作业的次数达到预设次数:
所述调度服务器获取所述作业集中各作业的状态;
所述调度服务器确定所述作业集中是否存在状态为可执行的作业;
在确定存在状态为可执行的作业的情况下,所述调度服务器调度该状态为可执行的作业对应的作业服务器以执行该作业;
所述调度服务器获取作业执行结果;
在所述作业执行结果为执行成功的情况下,所述调度服务器根据所述执行顺序更新所述作业集中各作业的状态。
3.根据权利要求2所述的方法,其特征在于,在所述调度服务器获取作业执行结果之后,还包括:
在所述作业执行结果为执行失败的情况下,所述调度服务器结束所述目标应用启动流程并向客户端返回所述目标应用启动失败信息。
4.根据权利要求2所述的方法,其特征在于,在作业执行结果为执行成功的情况下,所述调度服务器根据所述执行顺序更新所述作业集中各作业的状态,包括:
所述调度服务器将所述执行成功的作业的状态置为执行成功;
所述调度服务器确定在所述执行顺序中是否存在位于该执行成功的作业的下一节点的作业;
在确定在所述执行顺序中存在位于该执行成功的作业的下一节点的作业的情况下,所述调度服务器将所述执行顺序中位于该执行成功的作业的下一节点的作业的状态更新为可执行。
5.根据权利要求4所述的方法,其特征在于,在所述调度服务器确定在所述执行顺序中是否存在位于该执行成功的作业的下一节点的作业之后,还包括:
在确定在所述执行顺序中不存在位于该执行成功的作业的下一节点的作业的情况下,所述调度服务器确定所述作业集中的多个作业均执行成功。
6.根据权利要求2所述的方法,其特征在于,在所述调度服务器调度该状态为可执行的作业对应的作业服务器以执行该作业之后,还包括:
所述调度服务器获取作业执行日志;
所述调度服务器将获得的作业执行日志返回至所述客户端。
7.根据权利要求2所述的方法,其特征在于,所述调度服务器调度该状态为可执行的作业对应的作业服务器以执行该作业,包括:
所述调度服务器获取该状态为可执行的作业对应的作业服务器的IP地址、用户名和密码;
所述调度服务器根据所述IP地址、用户名和密码登录所述作业服务器;
所述调度服务器根据作业信息调度所述作业服务器以执行该状态为可执行的作业。
8.一种跨平台应用启动装置,其特征在于,位于调度服务器中,包括:
接收模块,用于接收目标应用启动指令;
获取模块,用于响应于所述目标应用启动指令,获取所述目标应用启动流程中的作业集中各作业的执行顺序,其中,所述目标应用启动流程中的作业集中的多个作业位于多个作业服务器,其中,所述多个作业服务器的操作系统不同;
调度模块,用于根据所述执行顺序,对所述多个作业服务器进行调度,以执行所述作业集中的多个作业;
返回模块,用于在所述作业集中的多个作业均执行成功后,向客户端返回所述目标应用启动完成信息;
其中,所述调度服务器获取所述目标应用启动流程中的作业集中各作业的执行顺序,包括:
所述调度服务器确定所述目标应用当前所处的场景;
所述调度服务器根据所述目标应用当前所处的场景,获取所述目标应用启动流程中的作业集中各作业间依赖关系,其中,所述作业集中各作业间依赖关系包括同一作业服务器上多个作业之间的依赖关系和不同作业服务器上多个作业之间的依赖关系;
所述调度服务器根据所述作业集中各作业间依赖关系确定所述作业集中各作业的执行顺序。
9.一种计算机设备,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机指令,所述指令被处理器执行时实现权利要求1至7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910116919.XA CN109862101B (zh) | 2019-02-13 | 2019-02-13 | 跨平台应用启动方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910116919.XA CN109862101B (zh) | 2019-02-13 | 2019-02-13 | 跨平台应用启动方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109862101A CN109862101A (zh) | 2019-06-07 |
CN109862101B true CN109862101B (zh) | 2021-12-17 |
Family
ID=66897957
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910116919.XA Active CN109862101B (zh) | 2019-02-13 | 2019-02-13 | 跨平台应用启动方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109862101B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110414840A (zh) * | 2019-07-29 | 2019-11-05 | 中国工商银行股份有限公司 | 跨调度区进行统一调度的方法、系统以及相关设备 |
CN110427260B (zh) * | 2019-08-09 | 2022-02-25 | 中国工商银行股份有限公司 | 主机作业调度方法、装置及系统 |
CN110597605A (zh) * | 2019-08-13 | 2019-12-20 | 武汉联影医疗科技有限公司 | 作业调度方法、装置、计算机设备和可读存储介质 |
CN110597668B (zh) * | 2019-09-20 | 2022-04-29 | 中国银行股份有限公司 | 一种常驻作业的处理方法及系统 |
CN111147916A (zh) * | 2019-12-31 | 2020-05-12 | 北京比利信息技术有限公司 | 跨平台服务系统、方法、设备和存储介质 |
CN111950930A (zh) * | 2020-08-25 | 2020-11-17 | 盟识(上海)科技有限公司 | 一种矿区自动驾驶车辆的调度方法、系统及设备 |
CN112615928B (zh) * | 2020-12-24 | 2023-09-05 | 度小满科技(北京)有限公司 | 数据的处理方法、设备以及存储介质 |
CN113220431B (zh) * | 2021-04-29 | 2023-11-03 | 西安易联趣网络科技有限责任公司 | 跨云的分布式数据任务调度方法、设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109086986A (zh) * | 2018-07-20 | 2018-12-25 | 中国邮政储蓄银行股份有限公司 | 作业调度方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100511274C (zh) * | 2005-11-15 | 2009-07-08 | 中国工商银行股份有限公司 | 批量作业集中管理和调度的系统及方法 |
CN104021444A (zh) * | 2014-06-13 | 2014-09-03 | 中国民航信息网络股份有限公司 | 跨平台作业调度系统 |
CN105791354A (zh) * | 2014-12-23 | 2016-07-20 | 中兴通讯股份有限公司 | 作业调度方法和云调度服务器 |
CN106874089B (zh) * | 2017-01-25 | 2019-11-05 | 北京安云世纪科技有限公司 | 一种应用程序自启动的处理方法、装置及移动终端 |
-
2019
- 2019-02-13 CN CN201910116919.XA patent/CN109862101B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109086986A (zh) * | 2018-07-20 | 2018-12-25 | 中国邮政储蓄银行股份有限公司 | 作业调度方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109862101A (zh) | 2019-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109862101B (zh) | 跨平台应用启动方法、装置、计算机设备和存储介质 | |
CN108228256B (zh) | 代码同步方法、装置、计算机可读介质及终端 | |
EP3444719B1 (en) | Method and system for a client to server deployment via an online distribution platform | |
CN109375933B (zh) | 一种客户端升级的方法及设备 | |
US10417062B2 (en) | Method and apparatus of unloading out of memory processing flow to user space | |
CN110225078B (zh) | 一种应用服务更新方法、系统及终端设备 | |
US10534655B1 (en) | Job scheduling based on job execution history | |
EP3879875A1 (en) | Resource change method and device, apparatus, and storage medium | |
CN113867916A (zh) | 任务处理方法、装置及电子设备 | |
CN110673933A (zh) | 基于ZooKeeper的分布式异步队列实现方法、装置、设备及介质 | |
WO2016116013A1 (zh) | 软件升级方法和系统 | |
CN115964153A (zh) | 一种异步任务处理方法、装置、设备以及存储介质 | |
CN109828830B (zh) | 用于管理容器的方法和装置 | |
CN107463390B (zh) | 一种软件升级方法及升级服务器 | |
CN108958933B (zh) | 任务执行器的配置参数更新方法、装置及设备 | |
CN110113176B (zh) | 用于配置服务器的信息同步方法及装置 | |
CN114064438A (zh) | 数据库故障处理方法和装置 | |
CN109766131B (zh) | 基于多线程技术实现软件智能化自动升级的系统及方法 | |
CN113676528A (zh) | 一种登录账号的同步方法、装置、设备、及介质 | |
CN110764911A (zh) | 基于订单的资源调度方法、装置和控制系统 | |
CN115309457A (zh) | 应用实例的重启方法、装置、电子设备及可读存储介质 | |
CN115766439A (zh) | Kvm设备批量升级方法、装置和电子设备 | |
CN109101253B (zh) | 云计算系统中主机的管理方法和装置 | |
CN112667255A (zh) | 更新方法、装置、电子设备及存储介质 | |
CN111984275A (zh) | 基于cpu架构类型的系统部署方法、系统、终端及存储介质 |
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 |