微服务调度方法及装置制造方法及图纸

技术编号:39399705 阅读:8 留言:0更新日期:2023-11-19 15:53
本申请公开了一种微服务调度方法及装置。其中,该方法包括:获取完成目标业务需要调用的多类微服务对应的多个微服务节点的节点信息,并依据节点信息构建微服务调度模型,其中,每类微服务对应多个微服务节点,微服务调度模型中包括多个微服务调度路径;构建微服务调度模型对应的基于服务稳定性维度和调用时间维度的路径优化函数;利用精英蚁群算法对路径优化函数进行求解,得到目标微服务调度路径,其中,在精英蚁群算法的迭代过程中,利用信息素增强系数、信息素衰减系数和精英奖励系数对蚂蚁爬行路径上的信息素浓度进行调整。本申请解决了微服务应用场景中针对大量的微服务缺乏高效且合理的调度策略的技术问题。高效且合理的调度策略的技术问题。高效且合理的调度策略的技术问题。

【技术实现步骤摘要】
微服务调度方法及装置


[0001]本申请涉及网络服务
,具体而言,涉及一种微服务调度方法及装置。

技术介绍

[0002]随着信息化的不断发展,传统的单体应用已不能满足当前复杂的业务需要,微服务架构逐渐成为当今软件开发的主流模式,微服务架构将一个大型复杂的应用程序分解成一组小型、独立的、可重用的服务,这些服务之间可以通过网络进行通信。在实际应用中,微服务调度是一项关键性任务,它决定了微服务之间的协作方式和效率,然而,传统的调度方法存在一定的局限性,无法充分利用多核处理器、集群资源和外部信息。因此,如何合理地安排微服务之间的协作关系并优化整体性能是当前学者所关注的重要课题。
[0003]相关技术应用中的微服务调度算法,多使用以负载均衡为代表的调用方式,其中包括轮询法、随机法、哈希法、最小连接数法、最小响应时间法等各种实现形式,但是这些方法都是事前设置,没有办法在系统动态执行中做到快速适配更优的方法,无法实时变更微服务的最优调用链,且每个调度算法只针对本职服务范围的服务,对于现在场景复杂、调用链冗长的业务没办法做到统一管理。
[0004]针对上述的问题,目前尚未提出有效的解决方案。

技术实现思路

[0005]本申请实施例提供了一种微服务调度方法及装置,以至少解决微服务应用场景中针对大量的微服务缺乏高效且合理的调度策略的技术问题。
[0006]根据本申请实施例的一个方面,提供了一种微服务调度方法,包括:获取完成目标业务需要调用的多类微服务对应的多个微服务节点的节点信息,并依据节点信息构建微服务调度模型,其中,每类微服务对应多个微服务节点,微服务调度模型中包括多个微服务调度路径;构建微服务调度模型对应的基于服务稳定性维度和调用时间维度的路径优化函数;利用精英蚁群算法对路径优化函数进行求解,得到目标微服务调度路径,其中,在精英蚁群算法的迭代过程中,利用信息素增强系数、信息素衰减系数和精英奖励系数对蚂蚁爬行路径上的信息素浓度进行调整。
[0007]可选地,构建微服务调度模型对应的基于服务稳定性维度和调用时间维度的路径优化函数,包括:每次迭代过程中,依据各个微服务节点的处理业务逻辑时间和微服务节点之间的网络传输时间确定各个微服务节点的响应时长,依据各个微服务节点的响应时长确定目标业务的第一服务最小调用时间,并确定第一服务最小调用时间对应的第一权重;依据本次迭代过程的第一服务最小调用时间和上一次迭代过程的第二服务最小调用时间确定服务稳定性,并确定服务稳定性对应的第二权重;依据第一服务最小调用时间、第一权重、服务稳定性和第二权重确定路径优化函数。
[0008]可选地,利用改进蚁群算法对路径优化函数进行求解,得到目标微服务调度路径,包括:对微服务调度模型的模型参数进行初始化,其中,模型参数至少包括:蚂蚁数量、各条
路径上的信息素浓度、迭代次数阈值;通过多只蚂蚁对微服务调度模型中的微服务节点进行遍历,完成一次迭代,其中,每只蚂蚁在确定爬行路径时,选择目标微服务节点作为当前微服务节点的下一微服务节点的概率由当前微服务节点与目标微服务节点间的路径上的信息素浓度确定;每完成一次迭代,确定本次迭代过程对应的信息素增强系数、信息素衰减系数和精英奖励系数,依据信息素增强系数、信息素衰减系数和精英奖励系数对蚂蚁爬行路径上的信息素浓度进行调整;在迭代次数达到迭代次数阈值时,输出当前路径优化函数的最优解为目标微服务调度路径。
[0009]可选地,确定本次迭代过程对应的信息素增强系数、信息素衰减系数和精英奖励系数,包括:确定微服务调度路径的路径长度和预设常数之积为强度因子,依据强度因子和当前迭代次数确定信息素增强系数的修正系数,并依据修正系数对上一迭代过程的信息素增强系数进行修正,得到本次迭代过程的信息素增强系数,其中,路径长度为完成目标业务需要调用的微服务的种类数;依据路径长度、当前迭代次数和预设调整因子确定本次迭代过程的信息素衰减系数;依据本次迭代过程得到的最优解对应的微服务调度路径的调用时间确定本次迭代过程的精英奖励系数。
[0010]可选地,依据信息素增强系数、信息素衰减系数和精英奖励系数对蚂蚁爬行路径上的信息素浓度进行调整,包括:对于每段路径,依据信息素衰减系数对路径当前信息素浓度进行衰减,得到衰减后的信息素浓度;在路径上有蚂蚁经过时,依据信息素增强系数和路径两端微服务节点的响应时长确定信息素浓度第一增量,在路径上没有蚂蚁经过时,确定信息素浓度第一增量为0;在路径属于本次迭代过程得到的预设数量的最优解对应的预设数量的微服务调度路径时,确定精英奖励系数为信息素浓度第二增量,在路径不属于本次迭代过程得到的预设数量的最优解对应的预设数量的微服务调度路径时,确定信息素浓度第二增量为0;对衰减后的信息素浓度、信息素浓度第一增量和信息素浓度第二增量求和,得到调整后的信息素浓度。
[0011]可选地,每次迭代开始之前,更新微服务调度模型中多个微服务节点的节点信息,若存在故障微服务节点,将故障微服务节点加入禁忌表。
[0012]可选地,每完成一次迭代,确定得到的路径优化函数的各个解是否满足约束条件,将不满足约束条件的解对应的微服务调度路径加入不可达列表,其中,约束条件包括:微服务调度路径的服务调用时间小于预设时间阈值。
[0013]根据本申请实施例的另一方面,还提供了一种微服务调度装置,包括:第一构建模块,用于获取完成目标业务需要调用的多类微服务对应的多个微服务节点的节点信息,并依据节点信息构建微服务调度模型,其中,每类微服务对应多个微服务节点,微服务调度模型中包括多个微服务调度路径;第二构建模块,用于构建微服务调度模型对应的基于服务稳定性维度和调用时间维度的路径优化函数;求解模块,用于利用精英蚁群算法对路径优化函数进行求解,得到目标微服务调度路径,其中,在精英蚁群算法的迭代过程中,利用信息素增强系数、信息素衰减系数和精英奖励系数对蚂蚁爬行路径上的信息素浓度进行调整。
[0014]根据本申请实施例的另一方面,还提供了一种非易失性存储介质,该非易失性存储介质包括存储的计算机程序,其中,非易失性存储介质所在设备通过运行该计算机程序执行上述的微服务调度方法。
[0015]根据本申请实施例的另一方面,还提供了一种电子设备,该电子设备包括:存储器和处理器,其中,存储器中存储有计算机程序,处理器被配置为通过计算机程序执行上述的微服务调度方法。
[0016]在本申请实施例中,首先获取完成目标业务需要调用的多类微服务对应的多个微服务节点的节点信息,并依据节点信息构建微服务调度模型,其中,每类微服务对应多个微服务节点,微服务调度模型中包括多个微服务调度路径;然后构建微服务调度模型对应的基于服务稳定性维度和调用时间维度的路径优化函数,同时兼顾调用规划效率和调用稳定性;再利用精英蚁群算法对路径优化函数进行求解,得到目标微服务调度路径。其中,相较于常见的蚁群算法,本申请的精英蚁群算法引入了信息素增强系数和信息素衰减系数,使算法能够在前期保持较广的搜索空间,并将较差的路径遗忘,在后期可以较快本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种微服务调度方法,其特征在于,包括:获取完成目标业务需要调用的多类微服务对应的多个微服务节点的节点信息,并依据所述节点信息构建微服务调度模型,其中,每类微服务对应多个微服务节点,所述微服务调度模型中包括多个微服务调度路径;构建所述微服务调度模型对应的基于服务稳定性维度和调用时间维度的路径优化函数;利用精英蚁群算法对所述路径优化函数进行求解,得到目标微服务调度路径,其中,在所述精英蚁群算法的迭代过程中,利用信息素增强系数、信息素衰减系数和精英奖励系数对蚂蚁爬行路径上的信息素浓度进行调整。2.根据权利要求1所述的方法,其特征在于,构建所述微服务调度模型对应的基于服务稳定性维度和调用时间维度的路径优化函数,包括:每次迭代过程中,依据各个微服务节点的处理业务逻辑时间和微服务节点之间的网络传输时间确定各个微服务节点的响应时长,依据各个微服务节点的响应时长确定所述目标业务的第一服务最小调用时间,并确定所述第一服务最小调用时间对应的第一权重;依据本次迭代过程的所述第一服务最小调用时间和上一次迭代过程的第二服务最小调用时间确定服务稳定性,并确定所述服务稳定性对应的第二权重;依据所述第一服务最小调用时间、所述第一权重、所述服务稳定性和所述第二权重确定所述路径优化函数。3.根据权利要求2所述的方法,其特征在于,利用改进蚁群算法对所述路径优化函数进行求解,得到目标微服务调度路径,包括:对所述微服务调度模型的模型参数进行初始化,其中,所述模型参数至少包括:蚂蚁数量、各条路径上的信息素浓度、迭代次数阈值;通过多只蚂蚁对所述微服务调度模型中的微服务节点进行遍历,完成一次迭代,其中,每只蚂蚁在确定爬行路径时,选择目标微服务节点作为当前微服务节点的下一微服务节点的概率由当前微服务节点与所述目标微服务节点间的路径上的信息素浓度确定;每完成一次迭代,确定本次迭代过程对应的信息素增强系数、信息素衰减系数和精英奖励系数,依据所述信息素增强系数、所述信息素衰减系数和所述精英奖励系数对蚂蚁爬行路径上的信息素浓度进行调整;在迭代次数达到所述迭代次数阈值时,输出当前所述路径优化函数的最优解为所述目标微服务调度路径。4.根据权利要求3所述的方法,其特征在于,确定本次迭代过程对应的信息素增强系数、信息素衰减系数和精英奖励系数,包括:确定微服务调度路径的路径长度和预设常数之积为强度因子,依据所述强度因子和当前迭代次数确定信息素增强系数的修正系数,并依据所述修正系数对上一迭代过程的信息素增强系数进行修正,得到本次迭代过程的信息素增强系数,其中,所述路径长度为完成所述目标业务需要调用的微服务的种类数;依据所述路径长度、当前迭代次数和预设调整因子确...

【专利技术属性】
技术研发人员:刘大伟朱圣祥
申请(专利权)人:中电信智能网络科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1