服务调度方法及装置、服务器、计算机可读存储介质转让专利

申请号 : CN202110985172.9

文献号 : CN113434283B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘舟杨帆谢林廷蓝汝淇王俊锐梁洪

申请人 : 广州三七互娱科技有限公司

摘要 :

本发明公开了一种服务调度方法、装置及服务器,所述方法包括:在生成用于描述各部署节点间的依赖关系的服务调度拓扑图后,响应针对至少一个目标云商的服务调度请求,将服务调度拓扑图发送至目标云商,从目标云商中获取与服务调度拓扑图中的部署节点一一对应的调度资源,对各部署节点进行初始化后,在目标云商中根据服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署节点进行服务调度。本发明可以使服务器无需针对不同的目标云商存储大量的待调度服务拓扑结构,只需针对调度服务存储一个服务调度拓扑图,减少服务器的存储压力,提高服务调度的便捷性。

权利要求 :

1.一种服务调度方法,其特征在于,包括:根据待调度的应用服务拆分的各任务,生成一一对应的部署节点;

根据各任务之间的依赖信息,生成服务调度拓扑图;所述服务调度拓扑图用于描述各部署节点间的依赖关系;

响应针对至少一个目标云商的服务调度请求,将服务调度拓扑图发送至目标云商,以在目标云商中根据服务调度拓扑图获取对应的调度资源集进行服务调度操作;所述调度资源集包括多个调度资源;所述服务调度操作包括从目标云商中获取与服务调度拓扑图中的部署节点一一对应的调度资源,对各部署节点进行初始化后,在目标云商中根据服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署节点进行服务调度;

当检测到所述依赖信息更新时,获取更新后的依赖信息形成的目标拓扑图,所述目标拓扑图用于描述各部署节点间更新后的依赖关系;

将所述目标拓扑图与服务调度拓扑图进行比对,根据比对结果更新服务调度拓扑图;

将更新后的所述服务调度拓扑图中被更新的部署节点发送至目标云商,以从目标云商中,获取对应的调度资源对被更新的部署节点进行初始化后,在目标云商中根据更新后的服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署节点进行服务调度。

2.根据权利要求1所述的服务调度方法,其特征在于,响应针对至少一个目标云商的服务调度请求,将所述服务调度拓扑图发送至目标云商,以在目标云商中根据服务调度拓扑图获取对应的调度资源集进行服务调度操作,包括:响应针对各目标云商的服务调度请求,将所述服务调度拓扑图发送至目标云商,以在各所述目标云商中根据所述服务调度拓扑图获取对应的调度资源集并行进行服务调度操作,所述各目标云商为不同云商。

3.根据权利要求2所述的服务调度方法,其特征在于,将所述服务调度拓扑图发送至目标云商,以在各目标云商中根据服务调度拓扑图获取对应的调度资源集并行进行服务调度操作,包括:

将所述服务调度拓扑图共享至各目标云商,以在各目标云商中根据服务调度拓扑图获取对应的调度资源集并行进行服务调度操作。

4.根据权利要求1所述的服务调度方法,其特征在于,所述依赖关系包括前置依赖,所述前置依赖用于表示某一部署节点的调度依赖于其余部署节点;

根据所述服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署节点进行服务调度,包括:

根据所述服务调度拓扑图检测各部署节点间是否存在前置依赖,并将不存在前置依赖的初始化后的各部署节点进行并行调度。

5.根据权利要求4所述的服务调度方法,其特征在于,还包括:将存在前置依赖的初始化后的各部署节点,根据所述前置依赖对应的调度顺序进行调度。

6.根据权利要求1‑5任一项所述的服务调度方法,其特征在于,所述调度资源集通过统一的应用程序编程接口从目标云商中获取。

7.一种服务调度装置,其特征在于,包括:节点生成模块,用于根据待调度的应用服务拆分的各任务,生成一一对应的部署节点;

拓扑图生成模块,用于根据各任务之间的依赖信息,生成服务调度拓扑图;所述服务调度拓扑图用于描述各部署节点间的依赖关系;

服务调度模块,用于响应针对至少一个目标云商的服务调度请求,将服务调度拓扑图发送至目标云商,以在目标云商中根据服务调度拓扑图获取对应的调度资源集进行服务调度操作;所述调度资源集包括多个调度资源;所述服务调度操作包括从目标云商中获取与服务调度拓扑图中的部署节点一一对应的调度资源,对各部署节点进行初始化后,在目标云商中根据服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署节点进行服务调度;

服务调度模块还用于:当检测到依赖信息更新时,获取更新后的依赖信息形成的目标拓扑图,目标拓扑图用于描述各部署节点间更新后的依赖关系;将目标拓扑图与服务调度拓扑图进行比对,根据比对结果更新服务调度拓扑图;将更新后的服务调度拓扑图中被更新的部署节点发送至目标云商,以从目标云商中,获取对应的调度资源对被更新的部署节点进行初始化后,在目标云商中根据更新后的服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署节点进行服务调度。

8.一种服务器,包括:存储器、处理器及记录在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的服务调度方法。

9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序适于由处理器加载并执行,以使得具有所述处理器的计算机设备执行权利要求1‑6任一项所述的服务调度方法。

说明书 :

服务调度方法及装置、服务器、计算机可读存储介质

技术领域

[0001] 本发明涉及服务调度技术领域,特别涉及服务调度方法及装置、服务器、计算机可读存储介质。

背景技术

[0002] 分布式计算技术已成为当前信息技术的主流,如移动计算和云计算等。云环境下的大型应用服务往往被分解成多个服务来调度和执行。在云环境下,相关技术的调度方法,
通常是在应用服务进程启动之前,服务器针对不同的云商部署各自的部署节点集群形成服
务调度拓扑图,然后从云商中获取与部署节点集群中各部署节点对应的调度资源与服务调
度拓扑图绑定,形成待调度服务拓扑结构,以在启动应用服务时,根据服务器存储的指定云
商的服务调度拓扑图和调度资源形成的待调度服务拓扑结构,将待调度服务拓扑结构发送
至云商进行部署节点集群的服务调度。
[0003] 但在实际应用时,由于不同云商之间相同部署节点所使用的调度资源可能不同,因此在服务调度进程启动之前,用户都必须重复地为各个云商预先部署对应的服务调度拓
扑图和对应的调度资源,以及需针对不同的云商预先存储对应的待调度服务拓扑结构,并
将待调度服务拓扑结构与对应的云商进行绑定,才可进行服务调度,导致服务器需预先存
储大量不同的待调度服务拓扑结构,存储压力大,服务调度的灵活性差,操作步骤复杂,同
时容易造成配置上的混乱和错误,给配置人员带来不便。

发明内容

[0004] 本发明的发明目的在于至少解决现有技术中存在的技术问题之一,提供一种服务调度方法及装置、电子设备、计算机可读存储介质,无需针对不同的云商预先存储对应的待
调度服务拓扑结构,减少服务器的存储压力,提高服务调度的便捷性。
[0005] 第一方面,本发明实施例提供一种服务调度方法,包括:
[0006] 根据待调度的应用服务拆分的各任务,生成一一对应的部署节点;
[0007] 根据各任务之间的依赖信息,生成服务调度拓扑图;所述服务调度拓扑图用于描述各部署节点间的依赖关系;
[0008] 响应针对至少一个目标云商的服务调度请求,将服务调度拓扑图发送至目标云商,以在目标云商中根据服务调度拓扑图获取对应的调度资源集进行服务调度操作;所述
调度资源集包括多个调度资源;所述服务调度操作包括从目标云商中获取与服务调度拓扑
图中的部署节点一一对应的调度资源,对各部署节点进行初始化后,在目标云商中根据服
务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署节点进行服务调
度。
[0009] 进一步的,响应针对至少一个目标云商的服务调度请求,将所述服务调度拓扑图发送至目标云商,以在目标云商中根据服务调度拓扑图获取对应的调度资源集进行服务调
度操作,包括:
[0010] 响应针对各目标云商的服务调度请求,将所述服务调度拓扑图发送至目标云商,以在各所述目标云商中根据所述服务调度拓扑图获取对应的调度资源集并行进行服务调
度操作,所述各目标云商为不同云商。
[0011] 进一步的,将所述服务调度拓扑图发送至目标云商,以在各目标云商中根据服务调度拓扑图获取对应的调度资源集并行进行服务调度操作,包括:
[0012] 将所述服务调度拓扑图共享至各目标云商,以在各目标云商中根据服务调度拓扑图获取对应的调度资源集并行进行服务调度操作。
[0013] 进一步的,所述依赖关系包括前置依赖,所述前置依赖用于表示某一部署节点的调度依赖于其余部署节点;
[0014] 根据所述服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署节点进行服务调度,包括:
[0015] 根据所述服务调度拓扑图检测各部署节点间是否存在前置依赖,并将不存在前置依赖的初始化后的各部署节点进行并行调度。
[0016] 进一步的,还包括:
[0017] 将存在前置依赖的初始化后的各部署节点,根据所述前置依赖对应的调度顺序进行调度。
[0018] 进一步的,还包括:
[0019] 当检测到所述依赖信息更新时,获取更新后的依赖信息形成的目标拓扑图,所述目标拓扑图用于描述各部署节点间更新后的依赖关系;
[0020] 将所述目标拓扑图与服务调度拓扑图进行比对,根据比对结果更新服务调度拓扑图;
[0021] 将更新后的所述服务调度拓扑图中被更新的部署节点发送至目标云商,以从目标云商中,获取对应的调度资源对被更新的部署节点进行初始化后,在目标云商中根据更新
后的服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署节点进行服
务调度。
[0022] 进一步的,所述调度资源集通过统一的应用程序编程接口从目标云商中获取。
[0023] 第二方面,在本发明实施例中,提供了一种服务调度装置,包括:
[0024] 节点生成模块,用于根据待调度的应用服务拆分的各任务,生成一一对应的部署节点;
[0025] 拓扑图生成模块,用于根据各任务之间的依赖信息,生成服务调度拓扑图;所述服务调度拓扑图用于描述各部署节点间的依赖关系;
[0026] 服务调度模块,用于响应针对至少一个目标云商的服务调度请求,将服务调度拓扑图发送至目标云商,以在目标云商中根据服务调度拓扑图获取对应的调度资源集进行服
务调度操作;所述调度资源集包括多个调度资源;所述服务调度操作包括从目标云商中获
取与服务调度拓扑图中的部署节点一一对应的调度资源,对各部署节点进行初始化后,在
目标云商中根据服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署
节点进行服务调度。
[0027] 第三方面,本发明实施例中,还提供了一种服务器,包括:存储器、处理器及记录在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述实施
例所述的服务调度方法。
[0028] 第四方面,本发明实施例提供一种计算机可读记录介质,所述计算机可读记录介质记录有计算机可执行指令,所述计算机可执行指令用于使计算机执行如上述实施例所述
的服务调度方法。
[0029] 与现有技术相比,本发明所产生的有益技术效果如下:
[0030] 本发明所述的服务调度方法及装置、服务器、计算机可读存储介质通过各任务的依赖信息生成用于描述各部署节点之间的依赖关系的服务调度拓扑图后,在进行服务调度
时,只需要将服务调度拓扑图发送至目标云商,以从目标云商中获取调度资源对调度拓扑
图中的部署节点初始化后,通过初始化后的各部署节点进行服务调度,无需针对不同的云
商在调度服务进程启动前重复地设置对应的调度资源和服务调度拓扑图,同时服务器无需
针对不同的目标云商存储大量的待调度服务拓扑结构,只需针对调度服务存储一个服务调
度拓扑图,减少服务器的存储压力,提高服务调度的便捷性。

附图说明

[0031] 下面结合附图和实施例对本发明进一步地说明。
[0032] 图1为本发明所述服务调度方法较优选实施例的应用环境图。
[0033] 图2为本发明所述服务调度方法较优选实施例的流程示意图。
[0034] 图3为本发明所述服务调度拓扑图的一个示例性结构示意图。
[0035] 图4为本发明所述服务调度拓扑图的又一个示例性结构示意图。
[0036] 图5为本发明所述服务调度方法另一个较优选实施例的流程示意图。
[0037] 图6为本发明所述服务调度装置较优选实施例的结构框图。
[0038] 图7为本发明所述服务器较优选实施例的结构框图。
[0039] 其中,图1的附图标记说明如下:
[0040] 110、终端;120、服务器;130、目标云商。
[0041] 图2和图5的附图标记说明如下:
[0042] S11、步骤一;S12、步骤二;S13、步骤三;S14、步骤四;S15、步骤五;S16、步骤六。
[0043] 图3和图4的附图标记说明如下:
[0044] A、部署节点;B、部署节点;C、部署节点。

具体实施方式

[0045] 本部分将详细描述本发明的具体实施例,本发明之较佳实施例在附图中示出,附图的作用在于用图形补充说明书文字部分的描述,使人能够直观地、形象地理解本发明的
每个技术特征和整体技术方案,但其不能理解为对本发明保护范围的限制。
[0046] 下面结合附图对本申请实施例进行详细的阐述,本申请实施例提供的服务调度方法应用于如图1所示的应用环境中。其中,图1所示的应用环境包括终端110,服务器120和多
个目标云商130,其中目标云商可以由云服务器或云服务器集群组成。终端110用于向服务
器120发送待调度的应用服务和由应用服务拆分成的各任务之间的依赖信息,服务器120用
于根据各任务生成对应的各部署节点后,根据各任务之间的依赖信息,生成用于描述各部
署节点之间的依赖关系的服务调度拓扑图。在服务器120接收到终端110发送的针对至少一
个目标云商130的服务调度请求时,将所述服务调度拓扑图发送至目标云商,以在目标云商
130中获取与各部署节点一一对应的各调度资源对服务调度拓扑图中的各部署节点进行初
始化后,在目标云商130中根据服务调度拓扑图中记录的各部署节点间的依赖关系,对初始
化后的各所述部署节点进行服务调度。
[0047] 本实施例通过用于描述部署节点的依赖关系的服务调度拓扑图后,在进行服务调度时,只需要将服务调度拓扑图发送至目标云商,以从目标云商中获取调度资源对调度拓
扑图中的部署节点初始化后,通过初始化后的各部署节点进行服务调度,从而避免了不同
云商调度资源的差异在调度服务进程启动前,需要针对不同云商绑定对应的待调度服务拓
扑结构进行服务调度,无需针对不同的云商在调度服务进程启动前重复地设置对应的调度
资源和服务调度拓扑图,同时服务器无需针对不同的目标云商存储大量的待调度服务拓扑
结构,只需针对调度服务存储一个服务调度拓扑图,减少服务器的存储压力,提高服务调度
的便捷性。
[0048] 下面,将通过几个具体的实施例对本发明提供的服务调度方法进行详细介绍和说明。
[0049] 如图2所示,在一个实施例中,提供了一种服务调度方法。本实施例主要以该方法应用于计算机设备来举例说明。该计算机设备具体可以是上述图1中的服务器120。
[0050] 参照图2,该服务调度方法具体包括如下步骤:
[0051] S11、根据待调度的应用服务拆分的各任务,生成一一对应的部署节点。
[0052] 在一实施例中,服务器从终端获取待调度的应用服务后,根据应用服务分解成的多个任务,对应生成多个部署节点。如在启动应用服务时,通常都需要执行配置资源、存储
资源和网络资源这三种资源的调度任务,因此可根据这三种资源的调度任务,形成部署节
点A、部署节点B和部署节点C。每个部署节点代表一种需要被调度的资源,如部署节点A代表
在进行服务调度时需要进行配置资源的调度。
[0053] S12、根据各任务之间的依赖信息,生成服务调度拓扑图;所述服务调度拓扑图用于描述各部署节点间的依赖关系。
[0054] 在一实施例中,应用服务中的各任务之间可能存在依赖信息,该依赖信息用于表示任务的调度顺序,如配置资源的调度优先于存储资源的调度。因此为使后续调度顺利执
行,将各部署节点根据各任务之间的依赖信息,生成描述各部署节点间的依赖关系的服务
调度拓扑图。如图3所示,该服务服务调度拓扑图指示部署节点A为部署节点B和部署节点C
的前置依赖,部署节点B为部署节点C的前置依赖。使在进行服务调度时,部署节点A、部署节
点B和部署节点C按箭头所示的顺序进行调度,即当部署节点A完成调度后,再执行部署节点
B的服务调度,然后再执行部署节点C的服务调度。
[0055] S13、响应针对至少一个目标云商的服务调度请求,将服务调度拓扑图发送至目标云商,以在目标云商中根据服务调度拓扑图获取对应的调度资源集进行服务调度操作;所
述调度资源集包括多个调度资源;所述服务调度操作包括从目标云商中获取与服务调度拓
扑图中的部署节点一一对应的调度资源,对各部署节点进行初始化后,在目标云商中根据
服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署节点进行服务调
度。
[0056] 其中,调度资源通过服务器预设的统一的应用程序编程接口从目标云商中获取。
[0057] 在一实施例中,当服务器接收到针对至少一个目标云商的服务调度请求,例如针对华为云的服务调度请求,即表示当前的服务调度所处的云环境为华为云环境。此时服务
器将服务调度拓扑图发送至对应的目标云商,以在目标云商中获取与各部署节点对应一一
的各调度资源记录到各部署节点中,对各部署节点进行初始化。如服务器当前所处的云环
境为华为云,服务器则将服务调度拓扑图发送至华为云,以在华为云中获取华为云的配置
资源写入图3中的部署节点A,对部署节点A进行初始化,获取华为云的存储资源写入图3中
的部署节点B,对部署节点B进行初始化,获取华为云的网络资源写入图3中的部署节点C,对
部署节点B进行初始化。在将各调度资源写入到各部署节点中,完成各部署节点的初始化
后,在华为云中根据服务调度拓扑图中记录的各部署节点间的依赖关系,将完成初始化后
的各部署节点形成基于华为云的服务调度任务在华为云的云环境下进行服务调度。
[0058] 通过部署节点的依赖关系形成服务调度拓扑图后,在进行服务调度时,只需要将服务调度拓扑图发送至目标云商,以从目标云商中获取调度资源对调度拓扑图中的部署节
点初始化后,通过初始化后的各部署节点进行服务调度,从而避免了不同云商调度资源的
差异在调度服务进程启动前,需要针对不同云商绑定对应的待调度服务拓扑结构进行服务
调度,无需针对不同的云商在调度服务进程启动前重复地设置对应的调度资源和服务调度
拓扑图,同时服务器无需针对不同的目标云商存储大量的待调度服务拓扑结构,只需针对
调度服务存储一个服务调度拓扑图,减少服务器的存储压力,提高服务调度的便捷性。
[0059] 考虑到在进行服务调度时,可能存在针对多个目标云商进行服务调度的情况,因此在一实施例中,当接收到针对多个目标云商的服务调度请求时,响应针对各目标云商的
服务调度请求,将服务调度拓扑图发送至目标云商,以在各目标云商中根据服务调度拓扑
图获取对应的各调度资源集并行进行服务调度操作,各目标云商为不同云商。
[0060] 在一实施例中,由于服务调度拓扑图无需与固定的目标云商进行绑定,仅在需要进行服务调度时才发送至对应的目标云商,从目标云商中获取对应云商的调度资源进行服
务调度,因此服务调度拓扑图可被多个目标云商共用。当接收到针对多个目标云商的服务
调度请求时,如阿里云和华为云的服务调度请求,将服务调度拓扑图发送至阿里云,以将阿
里云的各调度资源写入服务调度拓扑图中的各部署节点,对各部署节点进行初始化,在阿
里云中形成基于阿里云的服务调度任务后,再将服务调度拓扑图发送至华为云,以将华为
云的各调度资源写入服务调度拓扑图中的各部署节点,对各部署节点进行初始化,在华为
云中形成基于华为云的服务调度任务。最后将基于阿里云的服务调度任务和基于华为云的
服务调度任务进行并行调度,从而提高服务调度的效率。
[0061] 由于服务调度拓扑图无需与固定的目标云商进行绑定,因此为进一步提高调度效率,在一实施例中,在接收到针对多个目标云商的服务调度请求时,将服务调度拓扑图共享
至各目标云商,以在各目标云商中根据服务调度拓扑图获取对应的各调度资源集并行进行
服务调度操作。
[0062] 示例性的,当接收到阿里云和华为云的服务调度请求时,将服务调度拓扑图进行复制,形成第一拓扑蓝图和第二拓扑蓝图后,将第一拓扑蓝图共享至阿里云,将第二拓扑蓝
图共享至华为云,以在阿里云中获取对应的调度资源写入第一拓扑蓝图中的部署节点形成
基于阿里云的服务调度任务,同时在华为云中获取对应的调度资源写入第二拓扑蓝图中的
部署节点形成基于华为云的服务调度任务后,将基于阿里云的服务调度任务和基于华为云
的服务调度任务进行并行调度。
[0063] 通过将服务调度拓扑图共享至不同目标云商的方式,使得各目标云商可并行地进行调度资源的录入,从而进一步提高服务调度效率。
[0064] 在一实施例中,各部署节点的依赖关系包括前置依赖,前置依赖用于表示某一部署节点的调度依赖于其余部署节点。如图3所示,部署节点B的调度依赖于部署节点A,当部
署节点A被调度后,才可调度部署节点B。而由于并非每个部署节点均存在前置依赖,此时为
提高服务调度效率,根据服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后
的各部署节点进行服务调度,包括:根据服务调度拓扑图检测各部署节点间是否存在前置
依赖,并将不存在前置依赖的初始化后的各部署节点进行并行调度,将存在前置依赖的初
始化后的各部署节点,根据前置依赖对应的调度顺序进行调度。
[0065] 示例性的,如图4所示,当服务调度拓扑图中各部署节点包括部署节点A、部署节点B和部署节点C,且检测到部署节点B和部署节点A之间不存在前置依赖,即部署节点B的调度
无需依赖于其余部署节点的调度,此时则将目标云商的各调度资源分别写入部署节点A、部
署节点B和部署节点C进行部署节点的初始化形成服务调度任务后,在服务调度时对初始化
后的部署节点A和初始化后的部署节点B进行并行调度。而部署节点A和部署节点B是部署节
点C的前置依赖,则在服务调度时需在检测到初始化后的部署节点A和初始化后的部署节点
B完成服务调度后,再进行初始化后的部署节点C的服务调度。
[0066] 考虑到当应用服务更新时,依赖信息可能会进行更新,因此在一实施例中,当依赖信息更新时,可根据更新后的依赖信息形成新的服务调度拓扑图。如应用服务新增了一个
任务,此时可根据应用服务的任务生成各新的部署节点,并基于各新的部署节点的依赖关
系形成新的服务调度拓扑图后,将新的服务调度拓扑图替换旧的服务调度拓扑图进行服务
调度。但由于需要将服务调度拓扑图进行替换,因此此时利用旧的服务调度拓扑图运行的
调度任务需中止,同时需重新写入各部署节点对应的调度资源,操作较为繁琐,因此在一实
施例中,如图5所示,为另一个实施例中服务调度方法的流程示意图。在本实施例中,除图2
所示步骤外,还包括:
[0067] S14、当检测到依赖信息更新时,获取更新后的依赖信息形成的目标拓扑图,目标拓扑图用于描述各部署节点间更新后的依赖关系。
[0068] 在一实施例中,当依赖信息更新时,可根据更新后的依赖信息形成新的服务调度拓扑图,如应用服务新增了一个任务,此时可根据新增的任务生成新的部署节点D,然后基
于新的部署节点与其余旧的部署节点A、部署节点B和部署节点C形成新的服务调度拓扑图
作为目标拓扑图。
[0069] S15、将目标拓扑图与服务调度拓扑图进行比对,根据比对结果更新服务调度拓扑图。
[0070] 示例性的,目标拓扑图中记录有部署节点A、部署节点B、部署节点C和部署节点D以及各部署节点的依赖关系,服务调度拓扑图记录有部署节点A、部署节点B、部署节点C以及
各部署节点的依赖关系,其中目标拓扑图与服务调度拓扑图记录的部署节点A、部署节点B
和部署节点C之间的依赖关系相同,此时则将部署节点D和部署节点D与其余部署节点的依
赖关系,加入服务调度拓扑图中,以更新服务调度拓扑图。
[0071] S16、将更新后的服务调度拓扑图中被更新的部署节点发送至目标云商,以从目标云商中,获取对应的调度资源对被更新的部署节点进行初始化后,在目标云商中根据更新
后的服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部署节点进行服
务调度。
[0072] 在一实施例中,当更新后的服务调度拓扑图中增加了新的部署节点,如增加了部署节点D,同时部署节点A、部署节点B和部署节点C已经根据对应的调度资源进行初始化,则
此时只需将部署节点D发送至目标云商,从目标云商中获取与部署节点D对应的调度资源写
入部署节点D中,对部署节点D进行初始化,无需重新对已经初始化后的部署节点A、部署节
点B和部署节点C中的调度资源进行修改,在部署节点D中根据对应的调度资源进行初始化
后,即可根据更新后的服务调度拓扑图记录的依赖关系,将初始化后的部署节点A、初始化
后的部署节点B、初始化后的部署节点C和初始化后的部署节点D直接形成服务调度任务在
目标云商中进行调度,提高服务调度效率。
[0073] 在一个实施例中,如图6所示,提供了一种服务调度装置,包括:
[0074] 节点生成模块101,用于根据待调度的应用服务拆分的各任务,生成一一对应的部署节点。
[0075] 拓扑图生成模块102,用于根据各任务之间的依赖信息,生成服务调度拓扑图;所述服务调度拓扑图用于描述各部署节点间的依赖关系。
[0076] 服务调度模块103,用于响应针对至少一个目标云商的服务调度请求,将服务调度拓扑图发送至目标云商,以在目标云商中根据服务调度拓扑图获取对应的调度资源集进行
服务调度操作;所述调度资源集包括多个调度资源;所述服务调度操作包括从目标云商中
获取与服务调度拓扑图中的部署节点一一对应的调度资源,对各部署节点进行初始化后,
在目标云商中根据服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后的各部
署节点进行服务调度。
[0077] 其中,调度资源通过统一的应用程序编程接口从目标云商中获取。
[0078] 在一个实施例中,服务调度模块103,具体用于:
[0079] 响应针对各目标云商的服务调度请求,将服务调度拓扑图发送至目标云商,以在各目标云商中根据服务调度拓扑图获取对应的各调度资源集并行进行服务调度操作,各目
标云商为不同云商。
[0080] 在一个实施例中,服务调度模块103,还用于:
[0081] 将服务调度拓扑图共享至各目标云商,以在各目标云商中根据服务调度拓扑图获取对应的各调度资源集并行进行服务调度操作。
[0082] 在一实施例中,依赖关系包括前置依赖,前置依赖用于表示某一部署节点的调度依赖于其余部署节点。服务调度模块103,还用于:
[0083] 根据服务调度拓扑图检测各部署节点前置依赖,并将不存在前置依赖的初始化后的各部署节点进行并行调度。
[0084] 在一实施例中,服务调度模块103,还用于:将存在前置依赖的初始化后的各部署节点,根据前置依赖对应的调度顺序进行调度。
[0085] 在一实施例中,服务调度模块103还用于:
[0086] 当检测到依赖信息更新时,获取更新后的依赖信息形成的目标拓扑图,目标拓扑图用于描述各部署节点间更新后的依赖关系;将目标拓扑图与服务调度拓扑图进行比对,
根据比对结果更新服务调度拓扑图;将更新后的服务调度拓扑图中被更新的部署节点发送
至目标云商,以从目标云商中,获取对应的调度资源对被更新的部署节点进行初始化后,在
目标云商中根据更新后的服务调度拓扑图中记录的各部署节点间的依赖关系,对初始化后
的各部署节点进行服务调度。
[0087] 在一个实施例中,提供了一种服务器,如图7所示,包括:存储器、处理器及记录在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述实施
例所述的服务调度方法。
[0088] 在一个实施例中,本发明提供的服务调度装置可以实现为一种计算机程序的形式,计算机程序可在如图7所示的服务器上运行。服务器的存储器中可记录组成该服务调度
装置的各个程序模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的
本发明各个实施例的服务调度方法中的步骤。
[0089] 在一个实施例中,提供了一种电子设备,包括:存储器、处理器及记录在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时执行上述服务调度方法的
步骤。此处服务调度方法的步骤可以是上述各个实施例的服务调度方法中的步骤。
[0090] 在一个实施例中,提供了一种计算机可读记录介质,所述计算机可读记录介质记录有计算机可执行指令,所述计算机可执行指令用于使计算机执行上述服务调度方法的步
骤。此处服务调度方法的步骤可以是上述各个实施例的服务调度方法中的步骤。
[0091] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可记录于一计算机可读取记录介质
中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的记录介质可为磁
碟、光盘、ROM((Read‑Only Memory,只读记录记忆体)或RAM(Random Access Memory,随机
记录记忆体)等。
[0092] 以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为
本发明的保护范围。