CN113064712B - 基于云边环境的微服务优化部署控制方法、系统及集群 - Google Patents

基于云边环境的微服务优化部署控制方法、系统及集群 Download PDF

Info

Publication number
CN113064712B
CN113064712B CN202110412428.7A CN202110412428A CN113064712B CN 113064712 B CN113064712 B CN 113064712B CN 202110412428 A CN202110412428 A CN 202110412428A CN 113064712 B CN113064712 B CN 113064712B
Authority
CN
China
Prior art keywords
micro
service
resource
node
cloud
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
Application number
CN202110412428.7A
Other languages
English (en)
Other versions
CN113064712A (zh
Inventor
陈�全
过敏意
符凯华
张蔚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Jiaotong University
Original Assignee
Shanghai Jiaotong University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Jiaotong University filed Critical Shanghai Jiaotong University
Priority to CN202110412428.7A priority Critical patent/CN113064712B/zh
Publication of CN113064712A publication Critical patent/CN113064712A/zh
Application granted granted Critical
Publication of CN113064712B publication Critical patent/CN113064712B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明提供一种基于云边环境的微服务优化部署控制方法、系统及集群,所述基于云边环境的微服务优化部署控制方法包括:包括:将微服务应用划分成为多个子结构并将每个子结构映射到云边连续体的同一节点中;基于优化目标的约束为每个微服务细粒度的分配计算资源;监测每个节点的资源使用情况,在运行时发现资源使用不均衡时,将微服务从拥塞节点迁移至其他空闲节点。本发明可以解决微服务在云边连续体环境下的部署问题,以在保证用户请求端到端延迟要求的情况下最小化微服务的资源使用。

Description

基于云边环境的微服务优化部署控制方法、系统及集群
技术领域
本发明涉及大数据处理技术领域,特别是涉及云边架构技术领域。
背景技术
随着5G的发展和边缘设备算力的提升,云数据中心、边缘网关开始融合,地理分布式的云边环境能够充分发挥云数据中心的高性能以及边端设备的低延迟的特点,目前已在云VR,云游戏以及协同推理领域有广泛的应用。另一方面,面向用户的服务应用变得日益复杂,并且软件应用需要频繁的更新迭代,传统的软件已经难以满足用户的要求。为此,互联网应用正从单一架构向微服务转型,基于微服务的应用程序涉及多个微服务的互操作,每个微服务都可以独立实现和更新。这种独立性提高了应用程序的可伸缩性,可移植性和可用性。考虑到这些优势,微服务架构已被互联网公司广泛接受并采用。
在基于微服务架构的互联网应用中,一个应用通常包含微服务并组成工作流。相比于传统的单一架构,微服务架构使得将部分作业部署在更靠近用户侧的边缘设备成为可能。在云边连续体中部署多作业任务使得互联网服务能够同时享受边缘节点的低访问延迟和云数据中心的高计算能力,同时也带来了新的挑战。在云边融合的场景中,任务和相应的数据被部署在多个地理分布式计算节点上。现有的调度算法都不适用于基于云边连续体的微服务部署。
图1展示了在云边连续体重部署微服务时影响应用端到端延迟的两点因素。一方面,在云边连续体中,微服务间的通信以及微服务与数据的通信需要在公有网络中完成,这需要消耗高网络带宽。如图1所示,微服务应用包含4个微服务阶段,其拓补关系为:1)用户的请求首先经过阶段1处理并将处理结果传输给阶段2。2)阶段2接收到阶段1的中间结果后进行处理并将结果传输给阶段3和阶段4。3)阶段3接收到阶段2的中间结果后开始进行处理并将处理结果传输给阶段3。4)阶段4接受到阶段2和阶段3的中间结果后开始进行处理并将最终结果返回给用户。其中阶段1和阶段2放置在云节点上,阶段3和阶段4分别放置在不同边缘节点上,图中黑色箭头表示阶段间的数据通信。阶段1与阶段2都放置在云节点上,其间的通信通过类似于①的方式在全局内存完成传输。而阶段2和阶段3中被放置在不同计算节点(边缘节点1和边缘节点2)中,在这种情况下,阶段2的数据传输需要类似于②的方式占用公用网络进而导致高通信开销。另一方面,同一节点上的多个微服务对共享资源相互竞争导致整体应用的性能下降,为某些微服务分配过多的计算资源会影响其他服务的性能进而导致微服务应用整体的性能减益。之前的技术仅将基于微服务架构的互联网服务部署在云计算节点当中,所以忽视了云边计算节点之间的高带宽消耗以及边缘节点上的共享资源争用,从而造成了严重的性能下降。因此传统的微服务部署技术不能直接应用于基于云边连续体的微服务部署当中。
现有技术中有一种技术方案是基于Kubernetes的按需调度策略:用户可以为部分微服务预分配计算资源,这些微服务被定义为guaranteed级别,并且在调度过程中会被优先调度。在调度的过程中,按需策略将采用两步策略调度guaranteed级别的微服务。首先,Kubernetes调用predicates算法对分布式系统中节点进行筛选找到可以映射该服务的节点队列。其次,Kubernetes调用priorities算法对节点队列中的节点进行打分并且选择最合适的节点映射。对于其他没有预分配资源的微服务,Kubernetes将这些服务随机映射到分布式节点当中,并且这些微服务竞争使用该节点的所有剩余资源。
基于Kubernetes的按需调度策略的缺点是基于Kubernetes的按需分配的调度算法不能很好的适应多作业任务在云边连续体中的部署。具体来说,首先,用户可以通过将关键性的作业设置成为guaranteed级别并预留资源以保证服务质量。然而作业的关键性随负载的变化而变化,必须在运行时进行分析,所以静态确定作业优先级的方案不可取。其次,对于其他作业,Kubernetes没有对其进行资源隔离。运行在同一计算节点当中的混部作业会竞争资源从而造成性能损失。最后基于Kubernetes的按需调度策略将微服务随机的部署到云边连续体中,其不同节点上的微服务间的通信需要消耗大量网络带宽。
现有技术中还有一种技术方案是基于反馈调节的算法,主要是解决延迟敏感型任务和后台批处理任务的混合部署问题。其主要思想是根据当前所有任务的运行情况决定下一时刻的资源分配,简单来说,当监视器检测到延迟敏感型任务存在QoS违反的风险,那么在下一时间内会为延迟敏感型任务分配更多计算资源,或停止后台批处理任务以消解资源争用。现有调度算法将多阶段微服务视为整体并和后台批处理任务混合部署以在保证作业的应用服务质量的前提下最大化分布式系统吞吐率。
基于反馈调节的算法缺点是基于反馈机制的调度策略更多的注重保证作业整体的QoS并提升分布式系统的整体吞吐率。在这些方法中,微服务随机的映射到分布式系统中,映射在同一计算节点当中的多个作业被当成整体并赋予计算资源,也就是说这些作业之间仍然存在资源争用,所以需要设计更加细粒度的资源划分模型为每个作业分配计算资源。此外,随机映射方式导致中间数据的大量拷贝进而影响到端到端延迟。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种基于云边环境的微服务优化部署控制方法、系统及集群,用于解决现有技术中微服务在云边连续体中或资源消耗大或数据端到端延迟的技术问题。
为实现上述目的及其他相关目的,本发明提供一种基于云边环境的微服务优化部署控制方法,包括:将微服务应用划分成为多个子结构并将每个子结构映射到云边连续体的同一节点中;基于优化目标的约束为每个微服务细粒度的分配计算资源;监测每个节点的资源使用情况,在运行时发现资源使用不均衡时,将微服务从拥塞节点迁移至其他空闲节点。
于本发明的一实施例中,所述优化目标的约束为每个节点上微服务子阶段的CPU消耗、内存消耗以及网络带宽消耗不能超过该节点的CPU、内存容量以及网络带宽总量。
于本发明的一实施例中,所述优化目标的约束还包括:用户请求的99%尾延迟在服务质量目标内并且单位时间内微服务应用吞吐要大于用户请求负载压力。
于本发明的一实施例中,所述将微服务从拥塞节点迁移至其他空闲节点包括:在每个节点上都为微服务配置资源使用表;在每个节点中资源使用表按照微服务网络通信消耗从小到大进行排序;当存在拥塞节点时,逐一比较拥塞节点的资源使用表的每一行,并将资源使用小于目标节点资源剩余量的微服务阶段迁移至其他空闲节点。
于本发明的一实施例中,所述资源使用表记录每个计算节点的资源使用、待迁移目标节点和迁移网络通信增量。
于本发明的一实施例中,所述方法还包括:预先训练多个负载压力状态下的资源划分和微服务阶段映射策略;基于所述资源划分和微服务阶段映射策略将微服务应用划分成为多个子结构并将每个子结构映射到云边连续体的同一节点中;当用户负载请求发生变化时,选择大于当前负载压力的资源划分和微服务映射策略。
于本发明的一实施例中,所述方法还包括:识别运行时微服务的资源浪费并降低存在资源冗余的微服务的资源份额,使得微服务应用的吞吐恰好等于当前用户负载以避免资源浪费。
本发明的实施例还提供一种基于云边环境的微服务优化部署控制系统,所述基于云边环境的微服务优化部署控制系统包括:微服务映射器,用于将微服务应用划分成为多个子结构并将每个子结构映射到云边连续体的同一节点中;微服务资源管理器,用于基于优化目标的约束为每个微服务细粒度的分配计算资源;微服务调度器,用于监测每个节点的资源使用情况,在运行时发现资源使用不均衡时,将微服务从拥塞节点迁移至其他空闲节点。
于本发明的一实施例中,所述微服务调度器包括:资源使用表单元,用于在每个节点上都为微服务配置资源使用表;排序单元,用于在每个节点中资源使用表按照微服务网络通信消耗从小到大进行排序;迁移单元,用于当存在拥塞节点时,逐一比较拥塞节点的资源使用表的每一行,并将资源使用小于目标节点资源剩余量的微服务阶段迁移至其他空闲节点。
本发明的实施例还提供一种云边服务分布式集群,包括多个服务器节点,多个服务器节点应用如上所述的基于云边环境的微服务优化部署控制方法。
如上所述,本发明的基于云边环境的微服务优化部署控制方法、系统及集群具有以下有益效果:
1、本发明为云边连续体提供了在线微服务部署策略,同时设计并实现了运行时负载均衡策略以实现高效的任务调度,从而满足微服务应用服务的QoS要求并最小化云边连续体的资源使用开销。
2、本发明可以解决微服务在云边连续体环境下的部署问题,以在保证用户请求端到端延迟要求的情况下最小化微服务的资源使用。
3、本发明的成果可以为现有的云边连续体环境提供在线的调度技术的支持与保证微服务应用运行时服务质量。
4、本发明的成果具有商业意义的、可以面向用户提供程序动态任务调度服务、在最小资源使用的情况下保证请求的服务质量。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1显示为现有技术中在云边连续体重部署微服务时影响应用端到端延迟的示意图。
图2显示为本申请一实施例中的基于云边环境的微服务优化部署控制方法的整体流程示意图。
图3显示为本申请一实施例中的基于云边环境的微服务优化部署控制方法的架构图。
图4显示为本申请一实施例中的基于云边环境的微服务优化部署控制方法中微服务映射示意图。
图5显示为本申请一实施例中的基于云边环境的微服务优化部署控制方法中微服务调度的流程示意图。
图6显示为本申请一实施例中的基于云边环境的微服务优化部署控制方法中负载迁移过程逻辑图。
图7显示为本申请一实施例中的基于云边环境的微服务优化部署控制系统的原理框图。
图8显示为本申请一实施例中的基于云边环境的微服务优化部署控制系统中微服务调度器的原理框图。
图9显示为本申请一实施例中的云边服务分布式集群的原理框图。
元件标号说明
100 基于云边环境的微服务优化部署控制系统
110 微服务映射器
120 微服务资源管理器
130 微服务调度器
131 资源使用表单元
132 排序单元
133 迁移单元
10 云边服务分布式集群
S100~S300 步骤
S310~S330 步骤
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
本实施例的目的在于提供一种基于云边环境的微服务优化部署控制方法、系统及集群,用于解决现有技术中微服务在云边连续体中或资源消耗大或数据端到端延迟的技术问题。
本实施例的基于云边环境的微服务优化部署控制方法、系统及集群为云边连续体提供了一种在线微服务部署策略,同时设计并实现了运行时负载均衡策略以实现高效的任务调度从而满足微服务应用服务的QoS要求并最小化云边连续体的资源使用开销,所以本实施例的基于云边环境的微服务优化部署控制方法、系统及集群可以保证微服务在云边连续体中的端到端延迟并最小化云边连续体中的计算资源消耗。
以下将详细阐述本发明的基于云边环境的微服务优化部署控制方法、系统及集群的原理及实施方式,使本领域技术人员不需要创造性劳动即可理解本发明的基于云边环境的微服务优化部署控制方法、系统及集群。
实施例1
具体地,如图2所示,本实施例提供一种基于云边环境的微服务优化部署控制方法,所述基于云边环境的微服务优化部署控制方法包括:
步骤S100,将微服务应用划分成为多个子结构并将每个子结构映射到云边连续体的同一节点中;
步骤S200,基于优化目标的约束为每个微服务细粒度的分配计算资源;
步骤S300,监测每个节点的资源使用情况,在运行时发现资源使用不均衡时,将微服务从拥塞节点迁移至其他空闲节点。
图3显示为本实施例中的基于云边环境的微服务优化部署控制方法的架构图。本实施例中的基于云边环境的微服务优化部署控制方法应用由三个主要部分组成,包括:微服务映射器、争用感知的微服务资源管理器以及负载感知调度器。其中,在接收到用户请求后,微服务映射器采用图分割的方法对微服务应用进行切分以最小化通信开销。在得到映射器的切分方案后,资源管理器采用强化学习的方法对每个微服务阶段分配资源。为了减小部署成本,资源管理器在保证服务质量和吞吐量的同时尽可能降低微服务的资源使用和网络带宽消耗。在得到合适的资源配置后,资源管理器的资源配置以及微服务映射器的映射方案提交给容器池(容器池1,容器池2,容器池3等)并由容器池启动微服务阶段并将对应节点的微服务阶段集合Si(S1,S2,……,Sn)部署到节点当中。在运行时,负载感知的微服务调度器监测每个节点的CPU核利用率和内存利用率并调整微服务应用的切分方案以避免负载不均衡并保证微服务应用的服务质量,并将映射方案重新提交给容器池并更新部署。
以下对本实施例的基于云边环境的微服务优化部署控制方法的步骤S100至步骤S300进行详细说明。
步骤S100,将微服务应用划分成为多个子结构并将每个子结构映射到云边连续体的同一节点中。
根据微服务的请求拓补结构,将微服务应用划分成为n个子结构并将每个子结构映射到云边连续体的某一个节点当中(n代表云边连续体中分布式计算节点的个数)。将数据交互频繁的微服务映射到同一节点使得其通信在全局内存当中完成进而降低了微服务应用的网络通信开销。
具体地,如图4所示,本实施例首先使用微服务映射器将微服务分布式映射到云边连续体中的各个分布式计算节点当中。映射器将微服务应用拓步进行切分并合并为多个聚合组,每个聚合组中的微服务阶段都被映射到同一个计算节点当中。对于同一个聚合组的微服务阶段,其间的通信采用跨进程通信的方式直接在内存当中完成。然而,对于不同聚合组的微服务阶段,其间的通信需要调用远程进程通信技术的方式通过公有网络完成。微服务映射器根据微服务调用拓步采用近似图分割的算法对微服务进行切分与映射。在这个过程中微服务映射器将那些需要频繁进行数据交互的微服务进行打包并映射在同一节点中以降低微服务间的通信开销进而降低云边连续体的网络带宽消耗。
步骤S200,基于优化目标的约束为每个微服务细粒度的分配计算资源。
于本实施例中,将任务调度问题转化为一个多目标决策问题,并通过求解目标优化得到最佳微服务资源划分。能够保证微服务应用的QoS并最小化微服务应用的资源使用。此外,当负载压力较大时,运行时系统能够利用节省的计算资源服务更多的用户请求从而提升了运行时系统的峰值吞吐。
具体地,于本实施例中,所述优化目标的约束为每个节点上微服务子阶段的CPU消耗、内存消耗以及网络带宽消耗不能超过该节点的CPU、内存以及网络带宽总量。
当微服务映射器完成微服务-计算节点的映射时,争用感知的资源管理器为每个微服务细粒度的分配计算资源(包括CPU核、内存容量、以及网络带宽)以保证微服务应用请求的服务质量(QoS)目标并最小化微服务应用的计算资源使用。具体来说,争用感知的资源管理器将资源划分问题转化成为了多目标优化问题。优化问题的目标是最小化计算资源的使用和最小化网络带宽的使用。优化问题的约束是每个节点上微服务阶段的CPU消耗、内存消耗以及网络带宽消耗不能超过这个节点的CPU、内存以及网络带宽总量。
于本实施例中,所述优化目标的约束还包括:用户请求的99%尾延迟在服务质量目标内并且单位时间内微服务应用吞吐要大于用户请求负载压力。
即本实施例采用最佳资源划分还需要保证用户请求的99%-尾延迟在服务质量(QoS)目标内并且单位时间内微服务应用吞吐要大于用户请求负载压力。为了能够根据微服务间的争用关系为每一个微服务阶段在线的分配资源,本实施例采用基于强化学习的调度方法,根据当前环境识别影响性能的关键微服务并增加关键微服务的资源划分份额。
步骤S300,监测每个节点的资源使用情况,在运行时发现资源使用不均衡时,将微服务从拥塞节点迁移至其他空闲节点。
由于微服务应用在运行时遵从昼夜模式,即用户负载压力随着时间周期性的变化。当用户请求负载提升时,不同微服务的资源消耗增加不同。所以在运行时,云边连续体会造成资源使用不平衡的情况。其中,某些边缘节点的变得拥塞,而其他节点依然处于空闲状态。所以此时,坚持微服务映射器的初始映射方案并不是明智之举。
于本实施例中,负载感知的调度解决负载均衡问题。随着用户负载的上升,微服务应用对计算资源的需求将急剧上升,负载感知微服务调度器不断监测每个计算节点资源使用情况,当存在拥塞节点而导致微服务应用的端到端延迟出现违反,该进程将微服务从拥塞节点迁移至其他空闲节点,并为关键的微服务分配更多的计算资源以补偿。即本实施例的方法可以实现负载感知的微服务调度器用于运行时的负载均衡。在运行时发现资源使用不均衡时,微服务调度器将微服务从拥塞节点迁移至其他空闲节点。
具体地,于本实施例中,如图5所示,所述将微服务从拥塞节点迁移至其他空闲节点包括:
步骤S310,在每个节点上都为微服务配置资源使用表。
于本实施例中,所述资源使用表记录每个计算节点的资源使用、待迁移目标节点和迁移网络通信增量。
步骤S320,在每个节点中资源使用表按照微服务网络通信消耗从小到大进行排序。
步骤S330,当存在拥塞节点时,逐一比较拥塞节点的资源使用表的每一行,并将资源使用小于目标节点资源剩余量的微服务阶段迁移至其他空闲节点。
图6显示为实施例中的基于云边环境的微服务优化部署控制方法中负载迁移过程逻辑图。其中,每个计算节点记录微服务阶段的资源使用开销以及迁移其他节点上的通信增量。负载迁移过程将微服务阶段从拥塞节点迁移至其他拥有充足资源的空闲节点以缓解拥塞节点的资源争用压力并保证微服务应用的服务质量和吞吐量需求。
具体来说,在每个节点上都为微服务维护资源使用表,资源使用表中记录微服务的计算资源使用、待迁移目标节点和迁移网络通信增量。在每个节点中资源使用表按照微服务网络通信消耗从小到大进行排序。同时微服务调度器维护资源使用表记录每个计算节点的资源使用。当存在拥塞节点时,微服务调度器逐一比较拥塞节点的资源使用表的每一行,并选择资源使用小于目标节点资源剩余量的微服务阶段进行迁移。
于本实施例中,所述方法还包括:
预先训练多个负载压力状态下的资源划分和微服务阶段映射策略;基于所述资源划分和微服务阶段映射策略将微服务应用划分成为多个子结构并将每个子结构映射到云边连续体的同一节点中;当用户负载请求发生变化时,
在运行时,仍然需要保证用户请求的服务质量(QoS),所以在资源调整的过程当中不能随意的进行资源调整。本技术采用两步资源调整策略。具体来说,本技术首先离线的训练数个负载压力状态下的资源划分和微服务阶段映射方案(例如负载压力为200,400,600)。当用户负载请求发生变化时(例如400变为500),本技术首先选择大于当前负载压力的资源划分和微服务映射方案(此时会选择600)以保证用户请求的服务质量(QoS),选择大于当前负载压力的资源划分和微服务映射策略。
于本实施例中,所述方法还包括:识别运行时微服务的资源浪费并降低存在资源冗余的微服务的资源份额,使得微服务应用的吞吐恰好等于当前用户负载以避免资源浪费。
本实施例利用在线强化学习的方法识别运行时微服务的资源浪费并适当降低存在资源冗余的微服务的资源份额使得微服务应用的吞吐恰好等于当前用户负载以避免资源浪费。
所以本实施例的基于云边环境的微服务优化部署控制方法可以解决微服务在云边连续体环境下的部署问题,以在保证用户请求端到端延迟要求的情况下最小化微服务的资源使用。本实施例在真机且无需修改硬件的前提下,实现上述调度目标。而且本实施例可以为现有的云边连续体环境提供在线的调度技术的支持与保证微服务应用运行时服务质量。本实施例的成果具有商业意义的、可以面向用户提供程序动态任务调度服务、在最小资源使用的情况下保证请求的服务质量。
实施例2
如图7所示,本实施例提供一种基于云边环境的微服务优化部署控制系统100,所述基于云边环境的微服务优化部署控制系统100包括:微服务映射器110,微服务资源管理器120以及微服务调度器。
于本实施例中,所述微服务映射器110用于将微服务应用划分成为多个子结构并将每个子结构映射到云边连续体的同一节点中。
于本实施例中,所述微服务资源管理器120用于基于优化目标的约束为每个微服务细粒度的分配计算资源。
于本实施例中,所述微服务调度器130用于监测每个节点的资源使用情况,在运行时发现资源使用不均衡时,将微服务从拥塞节点迁移至其他空闲节点。
具体地,如图8所示,于本实施例中,所述微服务调度器130包括:资源使用表单元131,排序单元132以及迁移单元133。
于本实施例中,所述资源使用表单元131用于在每个节点上都为微服务配置资源使用表;所述排序单元132用于在每个节点中资源使用表按照微服务网络通信消耗从小到大进行排序;所述迁移单元133,用于当存在拥塞节点时,逐一比较拥塞节点的资源使用表的每一行,并将资源使用小于目标节点资源剩余量的微服务阶段迁移至其他空闲节点。
本实施例的基于云边环境的微服务优化部署控制系统100具体实现的技术特征与前述实施例1中的基于云边环境的微服务优化部署控制方法基本相同,实施例间可以通用的技术内容不作重复赘述。
需要说明的是,应理解以上系统的微服务映射器110,微服务资源管理器120以及微服务调度器130的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且微服务映射器110,微服务资源管理器120以及微服务调度器130可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分通过处理元件调用软件的形式实现,部分通过硬件的形式实现。例如,微服务调度器130可以为单独设立的处理元件,也可以集成在控制器的某一个芯片中实现,此外,也可以以程序代码的形式存储于控制器的存储器中,由处理器的某一个处理元件调用并执行以上微服务调度器130的功能。其它微服务映射器110,微服务资源管理器120的实现与之类似。此外微服务映射器110,微服务资源管理器120以及微服务调度器130全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上微服务映射器110,微服务资源管理器120以及微服务调度器130可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
例如,以上微服务映射器110,微服务资源管理器120以及微服务调度器130可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器(digital singnal processor,简称DSP),或,一个或者多个现场可编程门阵列(FieldProgrammable Gate Array,简称FPGA)等。再如,当以上某个通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(Central Processing Unit,简称CPU)或其它可以调用程序代码的处理器,例如GPU。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称SOC)的形式实现。
实施例3
如图9所示,本实施例提供一种云边服务分布式集群10,包括多个服务器节点,多个服务器节点应用如实施例1所述的基于云边环境的微服务优化部署控制方法。实施例1已经对所述基于云边环境的微服务优化部署控制方法进行了详细说明,在此不再赘述。
综上所述,本发明为云边连续体提供了在线微服务部署策略,同时设计并实现了运行时负载均衡策略以实现高效的任务调度,从而满足微服务应用服务的QoS要求并最小化云边连续体的资源使用开销;本发明可以解决微服务在云边连续体环境下的部署问题,以在保证用户请求端到端延迟要求的情况下最小化微服务的资源使用;本发明的成果可以为现有的云边连续体环境提供在线的调度技术的支持与保证微服务应用运行时服务质量;本发明的成果具有商业意义的、可以面向用户提供程序动态任务调度服务、在最小资源使用的情况下保证请求的服务质量。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中包括通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

Claims (6)

1.一种基于云边环境的微服务优化部署控制方法,其特征在于:包括:
将微服务应用划分成为多个子结构并将每个子结构映射到云边连续体的同一节点中;
基于优化目标的约束为每个微服务细粒度的分配计算资源;
监测每个节点的资源使用情况,在运行时发现资源使用不均衡时,将微服务从拥塞节点迁移至其他空闲节点;
所述将微服务从拥塞节点迁移至其他空闲节点包括:
在每个节点上都为微服务配置资源使用表;
在每个节点中资源使用表按照微服务网络通信消耗从小到大进行排序;
当存在拥塞节点时,逐一比较拥塞节点的资源使用表的每一行,并将资源使用小于目标节点资源剩余量的微服务阶段迁移至其他空闲节点;
所述资源使用表记录每个计算节点的资源使用、待迁移目标节点和迁移网络通信增量;
所述方法还包括:
预先训练多个负载压力状态下的资源划分和微服务阶段映射策略;基于所述资源划分和微服务阶段映射策略将微服务应用划分成为多个子结构并将每个子结构映射到云边连续体的同一节点中;
当用户负载请求发生变化时,选择大于当前负载压力的资源划分和微服务映射策略。
2.根据权利要求1所述的基于云边环境的微服务优化部署控制方法,其特征在于:所述优化目标的约束为每个节点上微服务子阶段的CPU消耗、内存消耗以及网络带宽消耗不能超过该节点的CPU、内存以及网络带宽总量。
3.根据权利要求1或2所述的基于云边环境的微服务优化部署控制方法,其特征在于:所述优化目标的约束还包括:用户请求的99%尾延迟在服务质量目标内并且单位时间内微服务应用吞吐要大于用户请求负载压力。
4.根据权利要求1所述的基于云边环境的微服务优化部署控制方法,其特征在于:所述方法还包括:识别运行时微服务的资源浪费并降低存在资源冗余的微服务的资源份额,使得微服务应用的吞吐恰好等于当前用户负载以避免资源浪费。
5.一种基于云边环境的微服务优化部署控制系统,其特征在于:所述基于云边环境的微服务优化部署控制系统包括:
微服务映射器,用于将微服务应用划分成为多个子结构并将每个子结构映射到云边连续体的同一节点中;
微服务资源管理器,用于基于优化目标的约束为每个微服务细粒度的分配计算资源;
微服务调度器,用于监测每个节点的资源使用情况,在运行时发现资源使用不均衡时,将微服务从拥塞节点迁移至其他空闲节点;
预先训练多个负载压力状态下的资源划分和微服务阶段映射策略;基于所述资源划分和微服务阶段映射策略将微服务应用划分成为多个子结构并将每个子结构映射到云边连续体的同一节点中;当用户负载请求发生变化时,选择大于当前负载压力的资源划分和微服务映射策略;
所述微服务调度器包括:
资源使用表单元,用于在每个节点上都为微服务配置资源使用表;
排序单元,用于在每个节点中资源使用表按照微服务网络通信消耗从小到大进行排序;
迁移单元,用于当存在拥塞节点时,逐一比较拥塞节点的资源使用表的每一行,并将资源使用小于目标节点资源剩余量的微服务阶段迁移至其他空闲节点。
6.一种云边服务分布式集群,其特征在于:包括多个服务器节点,多个服务器节点应用如权利要求1至权利要求4所述的基于云边环境的微服务优化部署控制方法。
CN202110412428.7A 2021-04-16 2021-04-16 基于云边环境的微服务优化部署控制方法、系统及集群 Active CN113064712B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110412428.7A CN113064712B (zh) 2021-04-16 2021-04-16 基于云边环境的微服务优化部署控制方法、系统及集群

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110412428.7A CN113064712B (zh) 2021-04-16 2021-04-16 基于云边环境的微服务优化部署控制方法、系统及集群

Publications (2)

Publication Number Publication Date
CN113064712A CN113064712A (zh) 2021-07-02
CN113064712B true CN113064712B (zh) 2022-05-17

Family

ID=76567205

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110412428.7A Active CN113064712B (zh) 2021-04-16 2021-04-16 基于云边环境的微服务优化部署控制方法、系统及集群

Country Status (1)

Country Link
CN (1) CN113064712B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024086455A1 (en) * 2022-10-19 2024-04-25 Sony Interacitve Entertainment Inc. Scalable data center platform for cloud gaming and metaverse

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023057794A1 (en) * 2021-10-06 2023-04-13 Telefonaktiebolaget Lm Ericsson (Publ) Method for aligning quality of service in mobile network and edge cloud
CN114615338B (zh) * 2022-04-11 2023-07-18 河海大学 一种边缘环境中基于层共享的微服务部署方法及装置
CN114928633B (zh) * 2022-05-16 2024-04-16 江苏赞奇科技股份有限公司 一种基于复杂云应用环境的高效控制方法及系统
CN115190121B (zh) * 2022-05-25 2023-11-17 上海交通大学 基于跨地域的微服务过量负载调度系统、方法及设备
CN116126520B (zh) * 2022-12-19 2023-11-14 广东工业大学 一种分布式组件协同部署优化方法
CN116192962B (zh) * 2023-02-27 2023-11-14 中国人民解放军国防科技大学 一种面向云边端计算的通信聚合方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662750A (zh) * 2012-03-23 2012-09-12 上海交通大学 基于弹性虚拟机池的虚拟机资源优化控制方法及其系统
CN105631196A (zh) * 2015-12-22 2016-06-01 中国科学院软件研究所 一种面向微服务架构的容器级弹性资源供给系统及方法
CN110855578A (zh) * 2019-11-06 2020-02-28 西安电子科技大学 基于相似度的云上微服务资源调度优化方法
CN111597045A (zh) * 2020-05-15 2020-08-28 上海交通大学 管理混合部署的共享资源管理方法、系统及服务器系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11108654B2 (en) * 2019-07-15 2021-08-31 Bank Of America Corporation Re-deployable elastic framework

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102662750A (zh) * 2012-03-23 2012-09-12 上海交通大学 基于弹性虚拟机池的虚拟机资源优化控制方法及其系统
CN105631196A (zh) * 2015-12-22 2016-06-01 中国科学院软件研究所 一种面向微服务架构的容器级弹性资源供给系统及方法
CN110855578A (zh) * 2019-11-06 2020-02-28 西安电子科技大学 基于相似度的云上微服务资源调度优化方法
CN111597045A (zh) * 2020-05-15 2020-08-28 上海交通大学 管理混合部署的共享资源管理方法、系统及服务器系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于微服务+Redis的政务数据共享模式设计;张永跃;《电子技术与软件工程》;20200730;全文 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024086455A1 (en) * 2022-10-19 2024-04-25 Sony Interacitve Entertainment Inc. Scalable data center platform for cloud gaming and metaverse

Also Published As

Publication number Publication date
CN113064712A (zh) 2021-07-02

Similar Documents

Publication Publication Date Title
CN113064712B (zh) 基于云边环境的微服务优化部署控制方法、系统及集群
US6341303B1 (en) System and method for scheduling a resource according to a preconfigured plan
US6457008B1 (en) Pluggable resource scheduling policies
US5031089A (en) Dynamic resource allocation scheme for distributed heterogeneous computer systems
JP3813056B2 (ja) 優先順位に基づくチャネル・サブシステム保留入出力作業キューの処理
US8370898B1 (en) System and method for providing threshold-based access to compute resources
WO2016078178A1 (zh) 一种虚拟cpu调度方法
CN105159775A (zh) 基于负载均衡器的云计算数据中心的管理系统和管理方法
CN113454614A (zh) 用于分布式计算中的资源划分的系统和方法
US10686728B2 (en) Systems and methods for allocating computing resources in distributed computing
CN110221920B (zh) 部署方法、装置、存储介质及系统
Wided et al. Load balancing with Job Migration Algorithm for improving performance on grid computing: Experimental Results
Liu et al. A survey on virtual machine scheduling in cloud computing
CN103944997A (zh) 结合随机抽样和虚拟化技术的负载均衡方法
CN108123980A (zh) 一种资源调度方法及系统
Singh et al. Survey on various load balancing techniques in cloud computing
CN106095581B (zh) 一种私有云条件下的网络存储虚拟化调度方法
WO2020108337A1 (zh) 一种cpu资源调度方法及电子设备
CN113672391B (zh) 一种基于Kubernetes的并行计算任务调度方法与系统
CN114416355A (zh) 资源调度方法、装置、系统、电子设备及介质
CN111901435A (zh) 一种负载感知的云边协同服务部署方法
Huang et al. Qos-based resource discovery in intermittently available environments
Peng et al. BQueue: A coarse-grained bucket QoS scheduler
He et al. QoS-Aware and Resource-Efficient Dynamic Slicing Mechanism for Internet of Things.
Jmila et al. A self-stabilizing framework for dynamic bandwidth allocation in virtual networks

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