一种进程调度方法及系统与流程

文档序号:15143841发布日期:2018-08-10 20:12阅读:140来源:国知局

本发明属于计算机技术领域,尤其涉及一种进程调度方法及系统。



背景技术:

现有业务调度系统是通过业务的调度程序直接调取业务的业务进程,对于不同的业务,调度程序是不同的。应用容器采用的调度方法是通过应用容器的调度程序直接调取相应应用容器完成。故应用容器与所有现有业务调度系统存在不兼容的问题,限制了应用容器在业务处理方面的发展。



技术实现要素:

本发明所要解决的技术问题是针对现有技术的不足,提供一种进程调度方法及系统。

本发明解决上述技术问题的技术方案如下:一种进程调度方法,包括:

原业务调度单元根据获取的调度信息将每个应用容器内的中转单元开启,所述调度信息携带调度对象和调度指令;

所述中转单元在开启后向所述原业务调度单元发送注册信息;

所述原业务调度单元根据所述调度对象和接收的注册信息从所有中转单元中确定目标中转单元,并将所述调度指令发送给所述目标中转单元;

所述目标中转单元根据接收的所述调度指令控制与调度指令对应的应用容器内的业务进程的运行。

本发明的有益效果是:通过在获取到调度信息时,每个应用容器内的中转单元向原业务调度单元发送注册信息,原业务调度单元根据调度信息和注册信息从所有中转单元选择出目标中转单元,通过目标中转单元间接对应用容器内的业务进程进行调度,使所有原有业务调度单元均可与应用容器相互兼容,扩大了应用容器在业务处理方面的发展,无需调整原有业务调度单元,即完成采用应用容器方式处理不同的业务。

本发明解决上述技术问题的另一技术方案如下:一种进程调度系统,包括:

原业务调度单元,用于根据获取的调度信息将每个应用容器内的中转单元开启,所述调度信息携带调度对象和调度指令;根据所述调度对象和接收的注册信息从所有中转单元中确定目标中转单元,并将所述调度指令发送给所述目标中转单元;

中转单元,用于在开启后向所述原业务调度单元发送注册信息;确定为目标中转单元后根据接收的所述调度指令控制与调度指令对应的应用容器内的业务进程的运行。

本发明的有益效果是:通过在获取到调度信息时,每个应用容器内的中转单元向原业务调度单元发送注册信息,原业务调度单元根据调度信息和注册信息从所有中转单元选择出目标中转单元,通过目标中转单元间接对应用容器内的业务进程进行调度,使所有原有业务调度单元均可与应用容器相互兼容,扩大了应用容器在业务处理方面的发展,无需调整原有业务调度单元,即完成采用应用容器方式处理不同的业务。

附图说明

图1为本发明一实施例提供的一种进程调度方法的流程示意图;

图2为本发明另一实施例提供的一种进程调度方法的流程示意图;

图3为本发明另一实施例提供的一种进程调度方法的流程示意图;

图4为本发明实施例提供的一种进程调度系统的结构示意图;

图5为本发明另一实施例提供的一种进程调度系统的结构示意图。

具体实施方式

以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。

如图1所示,本发明实施例提供的一种进程调度方法,包括:

s1,原业务调度单元根据获取的调度信息将每个应用容器内的中转单元开启,调度信息携带调度对象和调度指令;

s2,中转单元在开启后向原业务调度单元发送注册信息;

s3,原业务调度单元根据调度对象和接收的注册信息从所有中转单元中选择出目标中转单元,并将调度指令发送给目标中转单元;

s4,目标中转单元根据接收的调度指令控制与调度指令对应的应用容器内的业务进程的运行。

该实施例中,原业务调度单元可以应用在分布式的环境中,对于不同的业务场景,原业务调度单元所采用的调度策略不同。

控制与调度指令对应的应用容器内的业务进程的运行包括:控制与调度指令对应的应用容器内的业务进程的启动、停止或者运行状态管理等,其中运行状态管理包括将业务进程的运行状态反馈给原有业务调度单元。

s4可以包括:目标中转单元对接收的调度指令进行解析,得到指令信息,根据指令信息控制与调度指令对应的应用容器内应用程序的业进程的运行。

目标中转单元集成原业务调度单元的api(applicationprogramminginterface,应用程序编程接口),接收原业务调度单元发送的调度命令,并按照调度指令进行调度。

本发明实施例提供的一种进程调度方法,通过在获取到调度信息时,每个应用容器内的中转单元向原业务调度单元发送注册信息,原业务调度单元根据调度信息和注册信息从所有中转单元选择出目标中转单元,通过目标中转单元间接对应用容器内的业务进程进行调度,使所有原有业务调度单元均可与应用容器相互兼容,扩大了应用容器在业务处理方面的发展,无需调整原有业务调度单元,即完成采用应用容器方式处理不同的业务。

可选地,本发明实施例中,注册信息包括:中转单元所处应用容器的位置信息、应用容器内设置的业务进程信息和中转单元信息。

上述实施例中,通过注册信息包括的应用容器的位置信息,使调度指令可以从原有业务调度单元到应用容器内的目标中转单元;通过业务进程信息,从而确定目标中转单元;通过中转单元信息,使原有业务调度单元可以通过中转单元间接对业务进程进行调度,使所有原有业务调度单元均可与应用容器相互兼容,扩大了应用容器在业务处理方面的发展。

可选地,如图2所示,本发明实施例中,调度对象包括待调度的业务进程,s3包括:

s31,原业务调度单元根据待调度的业务进程从接收的注册信息中选择出与待调度的业务进程对应的目标注册信息;

s32,原业务调度单元将与目标注册信息对应的中转单元作为目标中转单元,根据目标注册信息中的中转单元信息对目标中转单元进行注册,并从目标注册信息中获取目标中转单元所处应用容器的位置信息;

s33,在注册完成后,原业务调度单元根据位置信息将调度指令发送给目标中转单元。

上述实施例中,通过原业务调度单元根据待调度的业务进程从众多的注册信息中选择出目标注册信息,使原业务调度单元可以调度与目标注册信息对应的中转单元,并在注册完时,根据获得的位置信息将调度指令发送给该中转单元,由该中转单元间接对应用容器内的业务进程进行控制,从而无需修改原有业务调度单元,即完成采用应用容器方式处理不同的业务。

如图3所示,本发明另一实施例提供的一种进程调度方法,包括:

s0,按照预设规则将不同业务的应用程序存储至预设数量的应用容器,在每个应用容器内存储一个中转单元,中转单元在其注册信息中收录中转单元所处应用容器的业务进程信息;

s1,原业务调度单元根据获取的调度信息将每个应用容器内的中转单元开启,调度信息携带调度对象和调度指令;

s2,中转单元在开启后向原业务调度单元发送注册信息;

s3,原业务调度单元根据调度对象和接收的注册信息从所有中转单元中选择出目标中转单元,并将调度指令发送给目标中转单元;

s4,目标中转单元根据接收的调度指令控制与调度指令对应的应用容器内的业务进程的运行。

该实施例中,应用容器可以为应用容器引擎(docker),应用容器为运行进程提供独立的名称存储空间和主机资源,使其具备隔离性、可持续集成等特性,应用容器的种种特性使得采用应用容器来处理业务程序将给业务发展带来更广阔的前景。

上述实施例中,通过把不同业务的应用程序存储至预设数量的应用容器,在每个应用容器内存储一个中转单元,使所有原有业务调度单元通过中转单元可以间接对应用容器内的业务进程进行调度,促使所有原有业务调度单元均可与应用容器相互兼容。

可选地,本发明实施例中,s1包括:

原业务调度单元在获取调度信息后,通过应用容器的管理平台将每个应用容器开启,每个应用容器内的中转单元作为初始进程开启。

该实施例中,应用容器的管理平台可以包括:kubernetes(是指google开源的容器集群管理系统)或mesos(分布式计算框架)等。

上述实施例中,原业务调度单元在获取调度信息后,通过管理平台将每个应用容器开启,作为初始进程的中转单元即开启,中转单元开启后才能由原有业务调度单元对其进行注册,从而无需修改原有业务调度单元,即完成采用应用容器方式处理不同的业务。

如图4所示,本发明实施例提供的一种进程调度系统,包括:

原业务调度单元,用于根据获取的调度信息将每个应用容器内的中转单元开启,调度信息携带调度对象和调度指令;根据调度对象和接收的注册信息从所有中转单元中选择出目标中转单元,并将调度指令发送给目标中转单元;

中转单元,用于在开启后向原业务调度单元发送注册信息;确定为目标中转单元后根据接收的调度指令控制与调度指令对应的应用容器内的业务进程的运行。

本发明实施例提供的一种进程调度系统,通过在获取到调度信息时,每个应用容器内的中转单元向原业务调度单元发送注册信息,原业务调度单元根据调度信息和注册信息从所有中转单元选择出目标中转单元,通过目标中转单元间接对应用容器内的业务进程进行调度,使所有原有业务调度单元均可与应用容器相互兼容,扩大了应用容器在业务处理方面的发展,无需调整原有业务调度单元,即完成采用应用容器方式处理不同的业务。

可选地,本发明实施例中,注册信息包括:中转单元所处应用容器的位置信息、应用容器内设置的业务进程信息和中转单元信息。

上述实施例中,通过注册信息包括的应用容器的位置信息,使调度指令可以从原有业务调度单元到应用容器内的目标中转单元;通过业务进程信息,从而确定目标中转单元;通过中转单元信息,使原有业务调度单元可以通过中转单元间接对业务进程进行调度,使所有原有业务调度单元均可与应用容器相互兼容,扩大了应用容器在业务处理方面的发展。

可选地,本发明实施例中,调度对象包括待调度的业务进程,原业务调度单元具体用于:

根据待调度的业务进程从接收的注册信息中选择出与待调度的业务进程对应的目标注册信息;

将与目标注册信息对应的中转单元作为目标中转单元,根据目标注册信息中的中转单元信息对目标中转单元进行注册,并从目标注册信息中获取目标中转单元所处应用容器的位置信息;

在注册完成后,根据位置信息将调度指令发送给目标中转单元。

上述实施例中,通过原业务调度单元根据待调度的业务进程从众多的注册信息中选择出目标注册信息,使原业务调度单元可以调度与目标注册信息对应的中转单元,并在注册完时,根据获得的位置信息将调度指令发送给该中转单元,由该中转单元间接对应用容器内的业务进程进行控制,从而无需修改原有业务调度单元,即完成采用应用容器方式处理不同的业务。

本发明另一实施例提供的一种进程调度系统,包括:

设置模块,用于按照预设规则将不同业务的应用程序存储至预设数量的应用容器;在每个应用容器内存储一个中转单元,中转单元在其注册信息中收录中转单元所处应用容器的业务进程信息;

原业务调度单元,用于根据获取的调度信息将每个应用容器内的中转单元开启,调度信息携带调度对象和调度指令;根据调度对象和接收的注册信息从所有中转单元中选择出目标中转单元,并将调度指令发送给目标中转单元;

中转单元,用于在开启后向原业务调度单元发送注册信息;确定为目标中转单元后根据接收的调度指令控制与调度指令对应的应用容器内的业务进程的运行。

上述实施例中,通过把不同业务的应用程序存储至预设数量的应用容器,在每个应用容器内存储一个中转单元,使所有原有业务调度单元通过中转单元可以间接对应用容器内的业务进程进行调度,促使所有原有业务调度单元均可与应用容器相互兼容。

可选地,本发明实施例中,原业务调度单元具体还用于:

原业务调度单元在获取调度信息后,通过应用容器的管理平台将每个应用容器开启,每个应用容器内的中转单元作为初始进程开启。

上述实施例中,原业务调度单元在获取调度信息后,通过管理平台将每个应用容器开启,作为初始进程的中转单元即开启,中转单元开启后才能由原有业务调度单元对其进行注册,从而无需修改原有业务调度单元,即完成采用应用容器方式处理不同的业务。

该系统的各单元所执行的功能已经在上述实施例一种进程调度方法中做了详细的介绍,这里不再赘述。

如图5所示,每个应用容器内设置一个中转单元,由中转单元作为应用容器内的所有业务进程的管理进程,对应用容器内的所有业务进程按照原业务调度单元获取的调度信息进行启动、停止和运行状态管理。应用容器可以部署在主机或者操作系统中。中转程序在原业务调度单元注册后,接收原业务调度单元的调度,并带动应用容器内的所有业务进程的调度,因而原业务调度单元的调度策略不用发生改变。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。

作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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