System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请属于云计算资源管理,特别涉及一种微服务调度方法、装置、计算机设备以及存储介质。
技术介绍
1、在当代软件设计与开发领域,微服务架构显露出其变革性的优势。微服务架构的核心特性是模块化与去中心化,通过明确定义的api(application programminginterface,应用程序编程接口)进行通信,它们支持无缝的集成并能兼容多种技术堆栈,能够将复杂的应用分解为小型、可独立部署的服务。每一个微服务专注于一个特定的业务功能,使得团队能够同时研发各自的组件,从而实现快速的开发、部署和可伸缩性。
2、微服务范式的快速增长也带来了资源管理上的挑战,随着系统内微服务数量的增加,确保最优资源分配和利用变得复杂。在云计算和虚拟化环境中,应用程序的需求不断变化,首先,应用程序的负载和性能需求通常不是静态的,它们随时间的推移经历波动和变化,例如,某些时间段可能会面临高流量,而其他时间则负载较低。其次,云计算和虚拟化环境的兴起使资源按需分配变得容易,但也引入了资源管理的挑战,包括如何有效地分配、监控和维护资源等。在这一背景下,微服务自动扩展技术应运而生,以适应这种动态性能需求、降低资源浪费,提高自动化管理,并增强系统的故障容忍性。微服务自动扩展技术涉及到基于实时需求动态调整分配给微服务的实例或资源,确保在保持期望的性能水平的同时有效利用资源,由于微服务之间错综复杂的相互依赖,常常出现影响性能的关键路径和节点。这些依赖关系的动态特性要求深入理解应用程序的行为、工作负载模式及其对系统性能的影响。确定在保持整体系统稳定性的同时,在
3、近年来,已经有许多服务调度算法被提出,旨在优化计算中的服务时延,保证服务质量。现有的服务调度方法通常包括以下三种:
4、(1)基于阈值和启发式服务调度算法;该算法利用预定义规则进行资源分配,当系统的资源使用超过特定阈值时,则自动扩展器会增加资源分配。在资源充足,请求模式稳定且无急剧波动的情况下,该算法可以减少微服务之间的资源冲突,从而提高服务的可用性。但是,该算法依赖于阈值来触发资源伸缩,限制了对负载变化的准确预测和适应性,无法灵活应对未来的负载模式和突发事件。其次,由于需要等待资源利用率达到或超过阈值才触发伸缩操作,这种策略存在延迟响应,可能导致系统性能下降和用户体验受损。此外,固定阈值容易导致系统在负载波动较小情况下频繁触发伸缩操作,产生资源浪费和系统震荡,它还需要大量先验人类知识来设置预定义的阈值,如果在阈值设置不当的情况下,可能导致过度调整,增加成本。最后,该算法通常适用于简单的负载模式,难以适应多资源需求、季节性波动和突发事件等复杂的多维度和动态负载场景,限制了其在复杂环境中的有效性。
5、(2)基于机器学习的自动扩展算法;该算法是一种动态和智能的方法,利用机器学习算法自动调整分配给微服务的资源以应对变化的工作负载。通过分析历史数据、性能指标和工作负载模式,该算法能使微服务在需要时进行扩展或收缩,确保资源的优化使用并保持应用程序的稳定性能,有助于提高效率,降低运营成本,并增强建立在微服务架构上的现代分布式系统的可伸缩性。
6、(3)基于深度学习的自动扩展算法;该算法使用先进的深度学习技术自动化微服务资源的扩展过程。通过使用神经网络进行决策(例如,强化学习)并分析数据中的复杂模式,根据实时需求动态地调整分配给微服务的资源。此外,通过不断地从历史和当前的工作负载数据中学习,该算法优化了资源供应,增强了系统的响应性并减少了资源的浪费,有助于在动态环境中高效地管理微服务,促进无缝的可伸缩性和整体性能的提高。
7、然而,基于机器学习和深度学习的自动扩展算法和通常需要大量计算资源和时间,包括模拟环境、数据采样和策略优化等,导致高计算成本。其次,这些算法需要大量样本数据,因此在现实世界中的应用可能需要耗费大量时间进行训练。此外,该算法需要平衡探索未知策略和利用已知策略,不足的探索可能导致性能下降,而过度探索也会有负面影响。该算法还高度依赖准确的环境模型,但在复杂、不确定的现实世界环境中,建模难度较大。某些方法还需要大量数据进行学习,这对于资源有限的系统或实时应用可能不切实际。最后,现有的算法往往只支持少数的扩展操作,因为在资源调整方面存在很大的自由度。
技术实现思路
1、本申请提供了一种微服务调度方法、装置、计算机设备以及存储介质,旨在至少在一定程度上解决现有技术中的上述技术问题之一。
2、为了解决上述问题,本申请提供了如下技术方案:
3、一种微服务调度方法,包括:
4、获取负载数据,将所述负载数据转换为用户请求;
5、基于用户请求,收集集群内的微服务实例信息,并根据所述微服务实例信息进行负载预测;
6、结合所述微服务实例信息以及负载预测结果,利用强化学习算法对系统模型中的中心网络和分布式部署网络进行训练,并将所述分布式部署网络作为学生网络对中心网络的行为进行模仿学习;其中,所述分布式部署网络以分布式方式进行部署,能够基于本地信息并行执行微服务的扩展操作;
7、当所述分布式部署网络的模仿学习收敛后,通过所述分布式部署网络使用调度者算法执行集群内分布式微服务的调度策略。
8、本申请实施例采取的技术方案还包括:所述分布式部署网络包括一个部署缓冲区以及一个模仿学习器,所述部署缓冲区用于存储由中心网络传达的策略以训练所述分布式部署网络,并存储记录策略时的状态,将策略-状态对用于通过模仿学习训练所述分布式部署网络;所述模仿学习器用于独立缩放每个分布式部署网络。
9、本申请实施例采取的技术方案还包括:所述分布式部署网络包括学习模式和行动模式,在所述学习模式中,所述中心网络探索状态并指导所述分布式部署网络采取适当的行动,所述状态包括资源利用率;在所述行动模式中,所述分布式部署网络根据状态自主做出决策并对系统进行并行缩放操作。
10、本申请实施例采取的技术方案还包括:所述强化学习算法采用双延迟深度确定性策略梯度技术和重训通知器,所述利用强化学习算法对系统模型中的中心网络和分布式部署网络进行训练,具体为:
11、所述训练过程包括第一阶段和第二阶段,所述第一阶段为中心集群探索阶段,所述第二阶段为分布式调度阶段,当所述重训通知器被中心网络设定的触发条件触发时,进入第一阶段;在第一阶段,所述中心网络通过为每个分布式部署网络选择缩放操作进行中心集群的状态探索,所述缩放操作范围包括水平缩放、cpu缩放、内存缩放以及保持当前状态;所述分布式部署网络与中心网络的状态探索同时开始训练,在训练期间所述分布式部署网络通过模仿学习得到自身信息以及来自中心网络的缩放操作的映射;当所述重训通知器确定准备进行更改时,表示所述中心网络已经进行了广泛的状态探索,系统将从第一阶段切换到第二阶段;在第二阶段,决策的责任转交给分布式部署网络,所述缩放操作的范围保持不变,并将策略-状态对连续地注本文档来自技高网...
【技术保护点】
1.一种微服务调度方法,其特征在于,包括:
2.根据权利要求1所述的微服务调度方法,其特征在于,所述分布式部署网络包括一个部署缓冲区以及一个模仿学习器,所述部署缓冲区用于存储由中心网络传达的策略以训练所述分布式部署网络,并存储记录策略时的状态,将策略-状态对用于通过模仿学习训练所述分布式部署网络;所述模仿学习器用于独立缩放每个分布式部署网络。
3.根据权利要求2所述的微服务调度方法,其特征在于,所述分布式部署网络包括学习模式和行动模式,在所述学习模式中,所述中心网络探索状态并指导所述分布式部署网络采取适当的行动,所述状态包括资源利用率;在所述行动模式中,所述分布式部署网络根据状态自主做出决策并对系统进行并行缩放操作。
4.根据权利要求1至3任一项所述的微服务调度方法,其特征在于,所述强化学习算法采用双延迟深度确定性策略梯度技术和重训通知器,所述利用强化学习算法对系统模型中的中心网络和分布式部署网络进行训练,具体为:
5.根据权利要求4所述的微服务调度方法,其特征在于,所述第一阶段的具体训练过程包括:
6.根据权利要求5所
7.根据权利要求6所述的微服务调度方法,其特征在于,所述服务质量Qos通过Locust得到用户延迟,其中,最大容忍延迟(RTmax)预先定义在QoS奖励函数中,正常系统操作奖励为1,超过(RTmax)的性能则受到惩罚,奖励逐渐接近0,最终的服务质量奖励(Rqos(rt))计算公式为:
8.一种微服务调度装置,其特征在于,包括:
9.一种计算机设备,其特征在于,所述计算机设备包括处理器、与所述处理器耦接的存储器,其中,
10.一种存储介质,其特征在于,存储有处理器可运行的程序指令,所述程序指令用于执行权利要求1至7任一项所述微服务调度方法。
...【技术特征摘要】
1.一种微服务调度方法,其特征在于,包括:
2.根据权利要求1所述的微服务调度方法,其特征在于,所述分布式部署网络包括一个部署缓冲区以及一个模仿学习器,所述部署缓冲区用于存储由中心网络传达的策略以训练所述分布式部署网络,并存储记录策略时的状态,将策略-状态对用于通过模仿学习训练所述分布式部署网络;所述模仿学习器用于独立缩放每个分布式部署网络。
3.根据权利要求2所述的微服务调度方法,其特征在于,所述分布式部署网络包括学习模式和行动模式,在所述学习模式中,所述中心网络探索状态并指导所述分布式部署网络采取适当的行动,所述状态包括资源利用率;在所述行动模式中,所述分布式部署网络根据状态自主做出决策并对系统进行并行缩放操作。
4.根据权利要求1至3任一项所述的微服务调度方法,其特征在于,所述强化学习算法采用双延迟深度确定性策略梯度技术和重训通知器,所述利用强化学习算法对系统模型中的中心网络和分布式部署网络进行训练,具体为:
5.根据权利要求4所述的微服务调度方法,其特征在于,所述...
【专利技术属性】
技术研发人员:徐敏贤,白浩宇,温林峰,叶可江,须成忠,
申请(专利权)人:中国科学院深圳先进技术研究院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。