CN111522661A - 一种微服务管理系统、部署方法及相关设备 - Google Patents
一种微服务管理系统、部署方法及相关设备 Download PDFInfo
- Publication number
- CN111522661A CN111522661A CN202010322014.0A CN202010322014A CN111522661A CN 111522661 A CN111522661 A CN 111522661A CN 202010322014 A CN202010322014 A CN 202010322014A CN 111522661 A CN111522661 A CN 111522661A
- Authority
- CN
- China
- Prior art keywords
- service
- target
- micro
- deployment
- computing resource
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45575—Starting, stopping, suspending or resuming virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45591—Monitoring or debugging support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
Abstract
本申请实施例公开了一种微服务管理系统、部署方法及相关设备,其中方法包括:基于目标服务链中各个目标微服务实体设备的负载信息和各个目标微服务实体设备之间的传输时延确定目标服务链的业务处理信息,并根据目标服务链的业务处理信息生成部署更新配置,按照部署更新配置调整目标服务链上的目标微服务实体设备的部署位置。本申请实施例可以结合目标服务链上的各个目标微服务实体设备的负载情况和各个目标微服务实体设备之间的传输时延对目标微服务实体设备的部署进行自适应的灵活调整,有利于降低部署调整后的目标服务链的业务响应时间。
Description
技术领域
本申请涉及互联网技术领域,具体涉及计算机技术领域,尤其涉及一种微服务管理系统、一种微服务部署方法、一种微服务部署装置、一种微服务部署设备及一种计算机存储介质。
背景技术
传统的软件系统通常将其所有的功能放在一个单一进程中,这种架构称为单体架构。单体架构在系统规模比较小的情况下工作情况良好,但是随着系统规模的扩大,暴露出来的问题也越来越多,主要包括:开发人员都在同一个项目中修改代码导致开发效率低下、代码量大导致系统难以维护、功能耦合导致软件功能修改困难、部署速度慢、稳定性差、难以按需伸缩等。为了解决单体架构存在的上述问题,出现了微服务架构。微服务架构核心思想是将单体程序进行尽可能细粒度的拆解,使用多个微服务来开发单个应用,每个微服务运行在自己的进程中,这些微服务基于业务能力构建,并能够通过自动化部署机制来独立部署,可以使用不同的编程语言实现,采用不同数据存储技术,并保持最低限度的集中式管理。在采用微服务架构的系统(以下简称微服务管理系统)中,如何对各个微服务进行部署是直接影响全局业务响应时间的重要问题。
目前,微服务管理系统包括主要面向集中式云计算环境的微服务应用中心和微服务任务中心,但微服务应用中心和微服务任务中心在调整对微服务的部署时,往往不能做到全局业务响应时间的优化。因此,如何对微服务架构中的各个微服务进行部署,降低全局业务响应时间,成为一个亟待解决的问题。
发明内容
本申请实施例提供了一种微服务管理系统、部署方法及相关设备,可以结合目标服务链上的各个目标微服务实体设备的负载情况和各个目标微服务实体设备之间的传输时延对目标微服务实体设备的部署进行自适应的灵活调整。
一方面,本申请实施例提供了一种微服务管理系统,微服务管理系统包括微服务部署设备及多个计算资源池,每个计算资源池中部署有微服务实体设备;微服务管理系统中包括正在运行的目标服务链,目标服务链包含至少一个目标微服务实体设备,上述至少一个目标微服务实体设备来自于至少一个计算资源池;其中,
微服务部署设备,用于获取目标服务链的业务处理信息,根据目标服务链的业务处理信息生成部署更新配置,以及按照部署更新配置调整目标服务链上的目标微服务实体设备的部署位置;该业务处理信息至少包括业务响应时间,业务响应时间是基于各个目标微服务实体设备的负载信息和各个目标微服务实体设备之间的传输时延确定的;上述部署更新配置包括关于各个目标微服务实体的部署位置的调整信息。
另一方面,本申请实施例提供了一种微服务部署方法,该方法由微服务管理系统中的微服务部署设备执行,微服务管理系统中包括多个计算资源池及正在运行的目标服务链,每个计算资源池中部署有微服务实体设备;目标服务链包含至少一个目标微服务实体设备,至少一个目标微服务实体设备来自于至少一个计算资源池;该方法包括:
获取目标服务链的业务处理信息;业务处理信息至少包括业务响应时间,业务响应时间是基于各个目标微服务实体设备的负载信息和各个目标微服务实体设备之间的传输时延确定的;
根据目标服务链的业务处理信息生成部署更新配置,部署更新配置包括关于目标服务链上的目标微服务实体设备的部署位置的调整信息;
按照部署更新配置调整目标服务链上的目标微服务实体设备的部署位置。
再一方面,本申请实施例提供了一种微服务部署装置,部署装置配置于微服务管理系统中的微服务部署设备,微服务管理系统中包括多个计算资源池及正在运行的目标服务链,每个计算资源池中部署有微服务实体设备;目标服务链包含至少一个目标微服务实体设备,至少一个目标微服务实体设备来自于至少一个计算资源池;部署装置包括:
获取单元,用于获取目标服务链的业务处理信息;业务处理信息至少包括业务响应时间,业务响应时间是基于各个目标微服务实体设备的负载信息和各个目标微服务实体设备之间的传输时延确定的;
处理单元,用于根据目标服务链的业务处理信息生成部署更新配置,部署更新配置包括关于目标服务链上的目标微服务实体设备的部署位置的调整信息;
调整单元,用于按照部署更新配置调整目标服务链上的目标微服务实体设备的部署位置。
相应地,本申请实施例还提供了一种微服务部署设备,微服务部署设备应用于微服务管理系统,微服务管理系统中包括多个计算资源池及正在运行的目标服务链,每个计算资源池中部署有微服务实体设备;目标服务链包含至少一个目标微服务实体设备,至少一个目标微服务实体设备来自于至少一个计算资源池;该微服务部署设备包括处理器和存储装置;所述存储装置,用于存储程序指令;所述处理器,调用所述程序指令,用于执行如下步骤:
获取目标服务链的业务处理信息;业务处理信息至少包括业务响应时间,业务响应时间是基于各个目标微服务实体设备的负载信息和各个目标微服务实体设备之间的传输时延确定的;
根据目标服务链的业务处理信息生成部署更新配置,部署更新配置包括关于目标服务链上的目标微服务实体设备的部署位置的调整信息;
按照部署更新配置调整目标服务链上的目标微服务实体设备的部署位置。
相应地,本申请实施例还提供了一种计算机存储介质,该计算机存储介质中存储有程序指令,该程序指令被执行时,用于实现上述的各方法。
本申请实施例中的微服务部署设备可以基于目标服务链中各个目标微服务实体设备的负载信息和各个目标微服务实体设备之间的传输时延确定目标服务链的业务处理信息,并根据目标服务链的业务处理信息生成部署更新配置,按照部署更新配置调整目标服务链上的目标微服务实体设备的部署位置。在对目标微服务实体设备的部署位置进行调整的过程中,可以结合各个目标微服务实体设备的负载情况和各个目标微服务实体设备之间的传输时延对目标微服务实体设备的部署进行自适应的灵活调整,有利于降低部署调整后的目标服务链的业务响应时间。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是现有技术中的一种微服务应用中心的结构示意图;
图1b是现有技术中的一种微服务任务中心的结构示意图;
图1c是本申请实施例提供的一种微服务管理系统的结构示意图;
图1d是本申请实施例提供的另一种微服务管理系统的结构示意图;
图2是本申请实施例提供的一种微服务部署方法的交互流程示意图;
图3是本申请实施例提供的一种微服务部署方法的流程示意图;
图4是本申请实施例提供的一种目标服务链对应的有向无环图;
图5是本申请实施例提供的一种微服务之间的调用关系;
图6是本申请实施例提供的一种关于部署位置调整前的目标服务链的示意图;
图7是本申请实施例提供的一种关于部署位置调整后的目标服务链的示意图;
图8是本申请实施例提供的另一种关于部署位置调整前的目标服务链的示意图;
图9是本申请实施例提供的又一种关于部署位置调整后的目标服务链的示意图;
图10是本申请实施例提供的一种微服务部署装置的结构示意图;
图11是本申请实施例提供的一种微服务部署设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,微服务管理系统包括主要面向集中式云计算环境的微服务应用中心和微服务任务中心。参见图1a所示的微服务应用中心的结构示意图,微服务应用中心通过动态创建微服务实体设备来处理客户端请求。它基于同步请求/响应模型实现。微服务实体设备基于HTTP(Hyper Text Transfer Protocol,超文本传输协议)协议向客户端提供可直接调用的API(Application Programming Interface,应用程序接口)。微服务应用中心通常借助容器实现各个微服务实体设备的分布式运行,每个微服务实体设备运行在容器环境中,并且必须在服务注册实体中进行注册,注明其服务进程的具体网络位置(IP(InternetProtocol,网际互联协议)地址和端口)。其中,该微服务实体设备可以理解为独立部署于各个容器中的服务进程,每一个服务进程用于提供一种服务。以云游戏为例,该服务可以为画面渲染服务、游戏用户权限认证服务等等;以车联网为例,该服务可以为道路信息采集服务、车联网用户权限认证服务等等。
其中,云游戏又可称为游戏点播,是一种以云计算技术为基础的在线游戏技术。云游戏技术使图形处理与数据运算能力相对有限的轻端设备能运行高品质游戏。在云游戏场景下,游戏并不在玩家游戏终端,而是在云端服务器中运行,并由云端服务器将游戏场景渲染为视频音频流,通过网络传输给玩家游戏终端。玩家游戏终端无需拥有强大的图形运算与数据处理能力,仅需拥有基本的流媒体播放能力与获取玩家输入指令并发送给云端服务器的能力即可。在本申请实施例中,用于运行微服务实体设备的服务器则为云端服务器。
微服务应用中心需要持续运行在一个共享资源池中,并根据客户端请求的流量情况,通过容器编排工具,对微服务实体设备进行动态增加或减少。为了实现对容器的动态操作,微服务应用中心需要在系统前端部署负载均衡器,当一个客户端请求到达时,由负载均衡器最先读取请求,并根据服务注册实体中的注册信息,按照各个微服务实体设备负载均摊的原则,将请求直接路由到可用的微服务实体设备。负载均衡器对每个被调用的微服务实体设备的响应情况进行实时跟踪,如果发现调用请求没有得到响应,它会将该请求分发到另一个可用的微服务实体设备。此外,负载均衡器还可以与容器编排器进行交互,获取容器进程的实时监控数据,并通过一定的预警方法,提前将过载的微服务实体设备从调度列表中剔除,并向容器编排器申请添加新的容器来运行新增的微服务实体设备。
参见图1b所示的微服务任务中心的结构示意图,微服务任务中心通过按需启动的方式,以事件触发的形式来进行微服务实体设备的任务执行。每个微服务实体设备依赖容器中的最小基础镜像层来实现快速启动。微服务任务中心根据事件驱动模型实现,它依赖一个任务消息队列进行异步工作流处理。客户端请求被作为任务事件存储在任务消息队列中,微服务实体设备通过读取消息队列来获取客户端请求并进行处理。客户端请求会被保存在任务消息队列中,直至得到处理。
微服务任务中心按优先级队列进行任务执行,消息队列中的任务调度器根据各个微服务实体设备的负载情况及客户端请求的优先级,动态地为微服务实体设备分配执行任务。各个微服务实体设备完成启动后,需向任务调度器进行服务注册,并实时通报其工作负载情况。
微服务任务借助容器编排器来统一管理资源池中的容器资源,任务调度器通过与容器编排器交互,可动态改变容器数量来支持微服务实体设备扩容或缩容。此外,容器编排器可向任务调度器通报各个容器的资源消耗情况,从而使得任务调度器能够提前将过载的微服务实体设备从任务调度列表中剔除,并添加新的微服务实体。
实践发现,目前微服务应用中心和微服务任务中心在调整对微服务的部署时,对于由服务链构成的业务系统,往往不能做到全局响应时间优化。特别是在目前云边协同(即边缘云环境和中心云环境协同)的业务发展趋势下,构成一个完整业务系统的多个微服务实体设备可能分布在边缘云环境及中心云环境等多个位置,其全局业务响应不仅与微服务实体设备的负载情况有关,也与微服务实体设备之间的网络延迟有关,而微服务应用中心和微服务任务中心均没有考虑到这类新的业务系统形态。
本申请实施例提出了一种微服务管理系统,请参见图1c,微服务管理系统包括微服务部署设备10及多个计算资源池,每个计算资源池中部署有微服务实体设备11,微服务管理系统中包括正在运行的目标服务链,目标服务链包含至少一个目标微服务实体设备,上述至少一个目标微服务实体设备来自于至少一个计算资源池,计算资源池为微服务实体设备提供业务处理环境,它可以由分散在网络边缘的多个边缘数据中心节点及在中心云环境的集中式数据中心构成,不同的计算资源池之间通过网络相互连接。该计算资源池的类型可以包括中心计算资源池或边缘计算资源池,中心计算资源池设在中心云环境中,边缘计算资源池设在边缘云环境中。上述微服务部署设备10可以为服务器,该服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。图1c中的客户端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等终端设备,也可以是运行于终端设备的应用(例如游戏应用、车联网应用)或者网络平台,但并不局限于此。客户端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。
其中,上述微服务部署设备,可以用于获取目标服务链的业务处理信息,根据目标服务链的业务处理信息生成部署更新配置,以及按照部署更新配置调整目标服务链上的目标微服务实体设备的部署位置;上述业务处理信息至少包括业务响应时间,该业务响应时间是基于各个目标微服务实体设备的负载信息和各个目标微服务实体设备之间的传输时延确定的,该部署更新配置包括关于各个目标微服务实体的部署位置的调整信息。由此可见,本申请实施例提出的微服务管理系统在对目标服务链中的各个目标微服务实体设备的部署位置进行调整的过程中,可以结合各个目标微服务实体设备之间的负载情况和各个目标微服务实体设备之间的传输时延对目标微服务实体设备的部署进行自适应的灵活调整,有利于降低部署调整后的目标服务链的业务响应时间。
请参见图1d,上述微服务部署设备可以包括中心决策模块12、服务部署执行模块13、多个业务负载采集模块14、多个网络质量监控模块15和多个业务请求分发模块16。其中,中心决策模块12和服务部署执行模块13均设在中心云环境中,中心决策模块12用于获取目标服务链的业务处理信息,以及根据目标服务链的业务处理信息生成部署更新配置;服务部署执行模块13用于按照部署更新配置调整目标服务链上的各个目标微服务实体设备的部署位置。
每个计算资源池中分别设有一个业务负载采集模块14、网络质量监控模块15和业务请求分发模块16,业务负载采集模块14用于收集所属计算资源池中的微服务实体设备的负载信息,并将收集到的负载信息上报给中心决策模块12;网络质量监控模块15用于收集所属计算资源池中的微服务实体设备之间的传输时延,并将收集到的传输时延上报给中心决策模块12;业务请求分发模块16用于维护微服务管理系统中的请求转发表,当接收到客户端发送的业务请求时,可以基于该请求转发表将业务请求分发到指定的微服务实体设备,进一步地,后续可以根据部署更新配置更新请求转发表,并基于更新后的请求转发表将业务请求转发至计算资源池中执行业务处理的微服务实体设备。其中,业务负载采集模块14向中心决策模块12上报负载信息,网络质量监控模块15向中心决策模块上报传输时延的上报方式均可以为实时上报或者周期性上报,本申请实施例对此不作具体限定。
其中,每一个业务请求分发模块16可以用于维护所属计算资源池对应的请求转发表,每一个请求转发表包括至少一个转发表项,每个转发表项包括:服务标识、目标标识和转发权重。业务请求分发模块16可基于请求转发表进行业务请求的可配置转发。具体来说,业务请求分发模块16可以建立如表1所示的请求转发表。其中,服务标识用于标示特定的微服务,目的标识由数据组合(IP地址,端口)标示,用来指示对应的微服务实体设备的IP地址及工作端口,表项中的IP地址既可以是业务请求分发模块16所在的资源池中的主机地址,也可以是其他计算资源池中的主机地址。转发权重是一个0到1之间的权重值,代表业务请求向目的地址转发的概率。中心决策模块12可通过调节权重值,在提供同样服务的不同微服务实体设备之间进行业务流量的分配调节。
表1
表项ID | 服务标识 | 目的表示 | 转发权重 |
1 | 标识1 | (IP1,端口1) | 权重1 |
2 | 标识2 | (IP2,端口2) | 权重2 |
请求转发表的表项更新可以由中心决策模块12向业务请求分发模块16下发的部署更新配置触发。当中心决策模块12在业务请求分发模块16所在的计算资源池中创建了一个微服务实体设备,则请求转发表中会添加相应的转发表项。当中心决策模块12在业务请求分发模块16所在的计算资源池中关闭了一个微服务实体设备,则请求转发表中会删除相应的转发表项。
在一个实施例中,中心决策模块12具体可以用于根据业务负载采集模块14上报的负载信息及网络质量监控模块15上报的传输时延,生成目标服务链的上述业务处理信息,其中,该业务处理信息至少包括业务响应时间。
在一个实施例中,中心决策模块12还可以具体用于构建与目标服务链对应的多条虚拟服务链,每条虚拟服务链包含至少一个微服务实体设备,至少一个微服务实体设备来自于至少一个计算资源池,每条虚拟服务链具备一个虚拟业务响应时间。进一步地,中心决策模块12可以从多条虚拟服务链中获取具备最小虚拟业务响应时间的目标虚拟服务链,当目标虚拟服务链的业务响应时间小于目标服务链的业务响应时间时,则按照目标虚拟服务链中的各个微服务实体设备的部署位置生成部署更新配置,后续可以基于该部署更新配置调整目标服务链上的目标微服务实体设备的部署位置。由此可见,本申请实施例可以基于业务响应时间更小的目标虚拟服务链对目标服务链中的各个目标微服务实体设备进行部署调整,从而降低目标服务链的全局业务响应时间。
由前述可知,本申请实施例提出的上述微服务管理系统为一个云边协同的微服务管理系统,可以将部分服务交由边缘云环境中的微服务实体设备完成,而无需所有的服务均交由中心云环境的微服务实体设备进行处理。由于边缘云环境距离客户端更近,相应地,边缘云环境中的微服务实体设备可以更快进行业务响应,相较于上述面向集中式云计算环境的计算微服务应用中心和微服务任务中心而言,采用这样的云边协同系统,有利于降低全局业务响应时间以及中心云环境的计算负载。示例性地,以云游戏为例,交由边缘云环境的服务例如可以为游戏画面渲染服务,以使游戏画面切换更加流畅;交由中心云环境的服务例如可以为用户权限验证服务,以提高用户信息的安全性以及权限验证的准确性。
虽然上述微服务任务中心可以通过分布式消息队列实现跨越边缘云及中心云的业务系统,但是消息队列的分布式部署会导致微服务任务中心基于优先级队列的任务调度方式受到消极影响。由于任务事件被存储在位于边缘云及中心云的不同消息队列中,且这些消息队列由不同的任务调度器控制,这就要求多个任务调度器之间需要进行复杂的协调,才能实现优先级调度。这一方面会导致业务响应时间因为任务调度器之间的额外协调而增加,另一方面也会导致微服务监控开销的激增,这是因为微服务实体设备需要向分布在各处的任务调度器上报其负载状况。而在本申请实施例提出的微服务管理系统中,任务的调度是由部署于各个计算资源池中的业务请求分发模块16基于请求转发表完成的,该请求转发表由位于中心云环境中的中心决策模块12进行统一管理,换言之,在本申请的微服务管理系统中,任务的调度实质是由中心决策模块12进行统一管理,相较于微服务任务中心而言,在任务调度时,一方面无需多个任务调度器之间进行复杂的协调,有利于提到任务调度的效率;另一方面,微服务实体设备也无需向分布在各处的任务调度器上报其负载状况,不存在额外的监控开销。
基于图1d所述的微服务管理系统,本申请实施例提出了一种微服务部署方法,如图2所示,中心决策模块执行步骤S201从多条虚拟服务链中确定目标虚拟链,其中,该目标虚拟链为多条虚拟服务链中具备最小虚拟业务响应时间的虚拟链,且该最小虚拟业务响应时间小于目标服务链的业务响应时间。进一步地,中心决策模块执行步骤S202按照目标虚拟服务链中的各个微服务实体设备的部署位置生成部署更新配置,并执行步骤S203向服务部署执行模块下发携带有部署更新配置信息的部署通知;服务部署执行模块可以执行步骤S204根据部署更新配置信息在不同的资源池中部署目标服务链中的各个目标微服务实体设备(也即调整目标服务链中的各个目标微服务实体设备的部署位置),进一步地,在确定对目标服务链中的各个目标微服务实体设备的部署完成后,服务部署执行模块可以执行步骤S205向中心决策模块发送部署响应信息,中心决策模块可以基于该部署响应信息确定对目标服务链中的各个目标微服务实体设备的部署完成,并执行步骤S206向部署了目标微服务实体的计算资源池对应的业务请求分发模块配置新的请求转发表,在上述请求转发表配置完成后,本次针对目标微服务实体设备的部署完成调整。后续部署于各个计算资源池中的各个业务请求分发模块可以基于各自维护的请求转发表,将来自客户端的业务请求转发至所属计算资源池中的指定微服务实体设备进行处理。由此可见,本申请实施例可以基于业务响应时间更小的目标虚拟服务链对目标服务链中的各个目标微服务实体设备进行部署调整,从而降低目标服务链的全局业务响应时间。
基于上述的描述,本申请实施例提出一种微服务部署方法,该微服务部署方法可以由上述所提及的微服务管理系统中的微服务部署设备执行,微服务管理系统中包括多个计算资源池及正在运行的目标服务链,每个计算资源池中部署有微服务实体设备,目标服务链包含至少一个目标微服务实体设备,该至少一个目标微服务实体设备来自于至少一个计算资源池。
请参见图3,该微服务部署方法可包括以下步骤S301-S303:
S301,获取目标服务链的业务处理信息,该业务处理信息至少包括业务响应时间。
其中,上述业务响应时间是基于各个目标微服务实体设备的负载信息和各个目标微服务实体设备之间的传输时延确定的。微服务部署设备可以获取目标服务链上的目标微服务实体的负载信息、目标微服务实体设备之间的传输时延以及调用关系,并基于目标微服务实体的负载信息、目标微服务实体设备之间的传输时延以及调用关系,生成目标服务链上的目标微服务实体对应的DAG(Directed Acyclic Graph,有向无环图),进而根据DAG关键路径算法确定目标服务链的业务响应时间。
其中,上述负载信息表征了目标微服务实体设备处理单个业务请求所需消耗的时间,上述传输时延表征了目标微服务实体设备之间传输数据所需的网络传输时间。示例性地,假设目标微服务实体设备包括微服务实体设备N(N为大于0的整数)和微服务实体设备M(M为大于0的整数),微服务部署设备生成的上述有向无环运行DAG图可以如图4所示,顶点N代表微服务实体设备N处理完成一个业务请求,其中顶点1代表来自客户端用户的业务请求到达系统,顶点0代表客户端用户收到业务响应。DAG中的边<N,M>代表微服务实体设备N将处理结果转交给微服务实体设备M继续处理,边<N,M>的箭头方向表示微服务实体设备N的处理结果进一步交由微服务实体设备M处理,边<N,M>上的数值代表的具体含义是:C_M表示微服务实体设备M完成业务处理所需消耗的时间,N_N,M表示微服务实体设备N向微服务实体设备M发出处理结果所需的网络传输时间,C_M+N_N,M为二者之和。微服务实体设备N向微服务实体设备M发出处理结果的行为由目标服务链中目标微服务实体之间的调用关系决定,与具体的业务逻辑有关。当微服务实体设备N及微服务实体设备M部署在不同的计算资源池时,N_N,M为两个资源池之间的网络传输时延,反之,N_N,M为单个资源池内部的网络传输时延。
进一步地,可以利用DAG关键路径法确定出上述DAG图对应的关键路径,对关键路径所有边上的数值进行求和,将求和得到的和值确定为正在运行的目标服务链的业务响应时间。
S302,根据目标服务链的业务处理信息生成部署更新配置,该部署更新配置包括关于目标服务链上的目标微服务实体设备的部署位置的调整信息。
微服务部署设备可以构建与目标服务链对应的多条虚拟服务链,每条虚拟服务链包含至少一个微服务实体设备,该至少一个微服务实体设备来自于至少一个计算资源池,每条虚拟服务链具备一个虚拟业务响应时间。进一步地,可以从多条虚拟服务链中获取具备最小虚拟业务响应时间的目标虚拟服务链,当目标虚拟服务链的业务响应时间小于目标服务链的业务响应时间时,则按照目标虚拟服务链中的各个微服务实体设备的部署位置生成部署更新配置。
其中,在一个实施例中,目标虚拟服务链的虚拟业务响应时间小于目标服务链的业务响应时间是指:目标服务链的业务响应时间与目标虚拟服务链的业务响应时间之间的差值大于阈值。示例性地,假设正在运行的目标服务链的业务响应时间为Ts(大于0的数),最小虚拟业务响应时间为Tv(大于0的数),阈值为T(大于或者等于0的数),微服务部署设备可以在(Ts-Tv)大于T时,确定目标虚拟服务链的业务响应时间小于目标服务链的业务响应时间。
或者,在另一个实施例中,目标虚拟服务链的业务响应时间小于目标服务链的业务响应时间也可以指:目标虚拟服务链的虚拟业务响应时间低于目标服务链的业务响应时间达到一定门限(例如,Tv比Ts少10%)。
在一个实施例中,当上述具备最小虚拟业务响应时间的目标虚拟服务链存在多个时,微服务部署设备可以基于多个目标虚拟服务链中任一个目标虚拟服务链中的各个微服务实体设备的部署位置生成部署更新配置。或者,可以检测各个目标虚拟服务链中各个目标虚拟服务器对计算资源池的资源消耗信息,并基于该资源消耗信息,从多个目标虚拟服务链中确定资源消耗最少的目标虚拟服务链,进而基于该资源消耗最少的目标虚拟服务链中的各个微服务实体设备的部署位置生成部署更新配置。
其中,上述微服务部署设备构建与目标服务链对应的虚拟服务链的具体实施方式可以为:检测目标服务链上的目标微服务实体设备的初始部署模式,基于目标服务链上的目标微服务实体设备的初始部署模式构建目标服务链对应的虚拟服务链,该虚拟服务链上的微服务实体的部署模式与目标服务链上的目标微服务实体设备的初始部署模式不同。进一步地,由于目标服务链上的目标微服务实体设备与对应虚拟服务链上的微服务实体是相同的,仅在于部署位置可能不同,这种情况下,当构建出目标服务链对应的虚拟服务链,同样可以基于与上述确定目标服务链的业务响应时间的相似方式,基于虚拟服务链中各个微服务实体设备的负载信息和各个微服务实体设备之间的传输时延确定虚拟服务链的虚拟业务响应时间。
示例性地,正在运行的目标服务链中包括微服务实体设备A、B和C,三者之间的调用关系为:A→B→C,微服务管理系统中共有两个资源池,分别为计算资源池1和计算资源池2,正在运行的目标服务链的初始部署模式为:微服务实体设备A在计算资源池1中运行,其他微服务实体设备在计算资源池2中运行。假设虚拟服务链的部署模式为:微服务实体设备A和B在计算资源池1中运行,其他微服务实体设备在计算资源池2中运行。这种情况下,通过上述内容可知,当微服务实体设备N及微服务实体设备M部署在不同的计算资源池时,N_N,M为两个资源池之间的网络传输时延。因此,虚拟服务链中微服务实体设备B与C之间的网络传输时延等同于计算资源池1和计算资源池2之间的网络传输时延,计算资源池1和计算资源池2之间的网络传输时延,微服务部署模块可以直接获取;微服务实体设备A与B的部署位置在正在运行的目标服务链上处于不同的计算资源池,在虚拟服务链上处于同一个计算资源池1,可见,微服务实体设备A与B之间在目标服务链上的网络传输时延与在虚拟服务链上的网络传输时延不同。这种情况,微服务部署设备获取预先针对计算资源1设置的网络传输时延,并将针对计算资源1设置的网络传输时延确定为虚拟服务链上微服务实体设备A与B之间网络传输时延。进一步地,可以基于虚拟服务链中各个微服务实体设备的负载信息和各个微服务实体设备之间的传输时延确定虚拟服务链的虚拟业务响应时间。
在一个实施例中,微服务部署设备可以通过穷举法列出目标服务链上的目标微服务实体设备在各个计算资源池中的所有部署模式,并针对目标微服务实体设备构建部署模式为目标部署模式的虚拟服务链,该目标部署模式为所有部署模式中除所述初始部署模式之外的部署模式。
示例性地,正在运行的目标服务链中包括目标微服务实体A、B和C,微服务管理系统中共有两个资源池,分别为计算资源池1和计算资源池2,正在运行的目标服务链的初始部署模式为:目标微服务实体A在计算资源池1中运行,其他目标微服务实体在计算资源池2中运行,通过穷举法列出目标服务链上的所有目标微服务实体设备在计算资源池1和计算资源池2中的所有部署模式。进一步地,删除目前正在运行的目标服务链的初始部署模式,构建的虚拟服务链的目标部署模式可以如表2所示。
表2
S303,按照部署更新配置调整目标服务链上的目标微服务实体设备的部署位置。
其中,上述计算资源池的类型可以包括中心计算资源池或边缘计算资源池,中心计算资源池设在中心云环境中,边缘计算资源池设在边缘云环境中,目标服务链上的目标微服务实体设备来自于至少一个计算资源池。微服务部署设备可以按照部署更新配置在中心计算资源池和/或边缘计算资源池中调整对目标服务链上的目标微服务实体设备的部署。在一个实施例中,上述微服务部署设备部署更新配置包括的调整信息可以用于指示在目标计算资源池中增加或者删除对目标微服务实体设备中一个或者多个的部署,微服务部署设备可以基于该调整信息的指示在目标计算资源池中增加或者删除对目标微服务实体设备中一个或者多个的部署。例如,调整信息指示在中心计算资源池1中增加微服务实体设备A,那么微服务部署设备可以基于该调整信息的指示在中心计算资源池1中增加微服务实体设备A的部署。
进一步地,微服务部署设备按照部署更新配置调整在中心计算资源池和/或边缘计算资源池中调整对目标服务链上的目标微服务实体设备的部署之后,若检测到目标服务链上用于最先处理业务请求的初始微服务实体设备的部署位置从边缘计算资源池调整为中心计算资源池,则可以向部署于边缘计算资源池的微服务部署设备发送请求转发通知,该请求转发通知用于指示部署于边缘计算资源池的微服务部署设备在接收到业务请求后,将业务请求转发至部署于中心计算资源池的微服务部署设备。进一步地,部署于中心计算资源池的微服务部署设备可以将该业务请求分发至初始微服务实体设备,由初始微服务实体设备进行处理。
可以理解是,本申请实施例的微服务管理系统中可以包括多个微服务部署设备,部署于中心云环境的微服务部署设备可以用于执行上述步骤S301~步骤S303,除此之外,针对每一个计算资源池均可以部署至少一个微服务部署设备,其中,每一个计算资源池对应的至少一个微服务部署设备中可以包括第一类型的部署设备和第二类型的部署设备,第一类型的部署设备可以用于部署用于运行微服务实体设备的容器,使得微服务实体设备可以运行在容器环境中,第二类型的部署设备可以用于对所属的计算资源池进行管理,相当于一个管理服务器,该管理可以包括维护所属计算资源池对应的请求转发表、业务请求的转发(例如基于该请求转发表向所属计算资源池的微服务实体设备分发业务请求、基于位于中心云环境的微服务部署设备下发的请求转发通知的指示在接收到业务请求后,将业务请求转发至部署于其它计算资源池中的微服务部署设备)、容器的管理(例如在所属计算资源池中增加或者删除容器)。
在一个实施例中,微服务部署设备按照目标虚拟服务链中的各个微服务实体设备的部署位置生成部署更新配置的之前,还可以将目标虚拟服务链中的各个微服务实体设备的部署位置与目标服务链中的各个目标微服务实体设备的部署位置进行对比,若二者的部署位置不同,则执行上述按照目标虚拟服务链中的各个微服务实体设备的部署位置生成部署更新配置的步骤。其中,二者的部署位置不同,可以理解为目标虚拟服务链和目标服务链的部署位置不同。具体地,将目标虚拟服务链中的各个微服务实体设备的部署位置与目标服务链中的各个目标微服务实体设备的部署位置进行对比后,若对比得到提供同一种微服务的微服务实体设备在目标虚拟服务链上和在目标服务链上的部署位置不同,则可以确定目标虚拟服务链和目标服务链的部署位置不同。例如,提供同一微服务1的微服务实体设备在目标虚拟服务链上的部署位置在中心计算资源池,提供同一微服务1的微服务实体设备在目标服务链上的部署位置在边缘计算资源池,那么,则可以确定目标虚拟服务链和目标服务链对应的部署位置不同。
在一个实施例中,每一个计算资源池对应一个请求转发表,每一个请求转发表中包括所属计算资源池中的微服务实体设备对应的转发表项,以及与所属计算资源池中的微服务实体设备存在调用关系的微服务实体设备的转发表项。其中,每一个请求转发表包括至少一个转发表项,每个转发表项包括:服务标识、目标标识和转发权重,微服务部署设备可以根据部署更新配置更新请求转发表。
进一步地,当接收到业务请求时,可以采用更新后的请求转发表将业务请求转发至计算资源池中执行业务处理的微服务实体设备。
其中,上述部署更新配置还可以包括将目标虚拟服务链中的各个微服务实体设备的部署位置与目标服务链中的各个目标微服务实体设备的部署位置进行对比后,得到的部署位置不同的目标微服务实体设备的第一配置信息,该第一配置信息包括部署位置不同的目标微服务实体设备的服务标识、其在目标虚拟链上对应的目的标识以及基于目的标识向其转发业务请求的转发权重;还可以包括与上述部署位置不同的目标微服务实体设备存在调用关系的微服务实体设备的第二配置信息。微服务部署设备可以基于上述第一配置信息和第二配置信息更新请求转发表。
示例性地,以将微服务实体设备从中心计算资源池迁移至边缘计算资源池的过程为例,参见图5~图7所示,假设微服务管理系统包括3个边缘计算资源池(编号1~3),1个中心计算资源池,边缘计算资源池与中心计算资源池之间通过网络相互连通,系统业务逻辑由图5所示的调用关系构成,整个业务逻辑由7个微服务组成(编号1~7);图6包括部署调整前各个目标微服务实体的位置部署图像60和边缘计算池对应的请求转发表61,由图6可知,在系统运行初期,边缘计算资源池各有2个目标微服务实体设备用来运行微服务1及微服务7,其余微服务都运行在中心计算资源池提供的目标微服务实体设备中,整个系统共存在3条正在运行的目标服务链(编号1~3),由于每个边缘计算资源池提供的微服务相同,相应地,每个边缘计算池对应的请求转发表也相同。图7包括部署调整后各个目标微服务实体的位置部署图像70和边缘计算资源池1对应的请求转发表71。
微服务部署设备可以获取各个目标链上各个目标微服务实体设备的负载信息和各个目标微服务实体设备之间的传输时延,并利用DAG关键路径法对各个目标服务链的业务响应时间进行计算。假设计算得出各个目标服务链的业务响应时间分别为Ts_1=Ts_2=Ts_3=2秒。
进一步地,针对每条现存的目标服务链,微服务部署设备分别生成127条虚拟服务链,并根据采集获得的上述负载信息和传输时延,利用DAG关键路径法计算每条目标服务链的业务响应时间。针对现存的目标服务链,上述虚拟服务链中的某个部署方式具有最小业务响应时间,其取值分别为Tv_1=Tv_2=Tv_3=2.3秒。由于现有的目标服务链的业务响应时间均低于虚拟服务链响应时间,所以微服务部署设备将不会对微服务实体设备的部署进行调整。
但随着系统的运行,假设边缘计算资源池1与中心计算资源池之间的网络连接质量恶化,微服务部署设备经过计算发现Ts_1=3.7秒,而上述127条虚拟服务链中的目标虚拟服务链(该目标虚拟服务链对应的部署方式为微服务实体1部署于边缘计算资源池1,其余微服务实体的部署位置与在编号为1的目标服务链上的部署位置相同)具有最小业务响应时间Tv_1=2.5秒。这种情况下,微服务部署设备可以基于目标虚拟服务链中的各个微服务实体设备的部署位置生成部署更新配置,并按照部署更新配置调整目标服务链上的目标微服务实体设备的部署位置。
其中,上述具体地调整可以为在边缘计算资源池1中创建微服务实体设备用于运行微服务2,并且更新边缘计算资源池1对应的请求转发表。其中,对于边缘计算资源池1对应的请求转发表的更新包括:修改了一条转发表项,将面向微服务2的请求转发到了本地的微服务实体设备上。此外,增加了一条转发表项,将面向微服务5的请求转发到中心计算资源池,这是由于在本地新添加的微服务2需要调用部署在中心计算资源池中的微服务5。
从边缘计算资源池1对应的请求转发表71可以看出,请求转发表71是微服务部署设备基于微服务实体设备2和微服务实体设备5分别对应的第一配置信息(微服务实体设备2的服务标识、微服务实体设备2在目标虚拟链上对应的目的标识以及基于目的标识向其转发业务请求的转发权重)和第二配置信息(微服务实体设备5的服务标识、微服务实体设备5在目标虚拟链上对应的目的标识以及基于目的标识向其转发业务请求的转发权重)对请求转发表61进行更新后得到的。其中,微服务实体设备2可以理解为上述将目标虚拟服务链中的各个微服务实体设备的部署位置与目标服务链中的各个目标微服务实体设备的部署位置进行对比后,得到的部署位置不同的目标微服务实体设备,微服务实体设备5可以理解为与微服务实体设备2存在调用关系的微服务实体设备。
进一步地,上述操作完成后,微服务管理系统中编号为1的目标服务链发生变化,变化后的目标服务链按如下方式运行:微服务1~2及7在边缘计算资源池1中执行,随后微服务2的处理结果通过网络传回中心计算资源池。最后,中心计算资源池中的微服务3~6完成业务处理后,再由微服务7将最终结果返回至客户端。
示例性地,以将微服务实体设备从边缘计算资源池迁移至中心计算资源池的过程为例,参见图5、图8和图9所示,假设微服务管理系统包括3个边缘计算资源池(编号1~3),1个中心计算资源池,边缘计算资源池与中心计算资源池之间通过网络相互连通,系统业务逻辑由图5所示的调用关系构成,整个业务逻辑由7个微服务组成(编号1~7);如图8所示,在系统运行初期,边缘计算资源池各有6个目标微服务实体设备用来运行微服务1~5及微服务7,而微服务6则运行在中心计算资源池提供的目标微服务实体设备中,因此整个系统共存在3条服务链(编号1~3)。
微服务部署设备可以获取各个目标链上各个目标微服务实体设备的负载信息和各个目标微服务实体设备之间的传输时延,并利用DAG关键路径法对各个目标服务链的业务响应时间进行计算。假设计算得出各个目标服务链的业务响应时间分别为Ts_1=Ts_2=Ts_3=2秒。
针对每条现存的目标服务链,微服务部署设备分别生成了127条虚拟服务链,并根据采集获得的上述负载信息和传输时延,利用DAG关键路径法计算每条目标服务链的业务响应时间。假设针对每条现存的目标服务链,上述虚拟服务链中的某个部署方式具有最小业务响应时间,其取值分别为Tv_1=Tv_2=Tv_3=2.3秒。由于现有的目标服务链的业务响应时间均低于虚拟服务链响应时间,所以微服务部署设备将不会对微服务实体设备的部署进行调整。
但是随着系统的运行,假设边缘计算资源池1的业务请求量增加,该边缘计算资源池中的计算资源开始不足,每个业务请求需要等待较长时间才能得到计算资源进行服务。由于中心计算资源池中的计算资源相对于边缘计算资源池更为丰富,中心决策模块经过计算得到Ts_1=3.7秒,而上述127条虚拟服务链中的目标虚拟服务链(该目标虚拟服务链对应的部署方式为:微服务实体设备3~5部署于边缘计算资源池1,其余微服务实体的部署位置与在编号为1的目标服务链上的部署位置相同)Tv_1=2.5秒。这种情况下,微服务部署设备可以基于目标虚拟服务链中的各个微服务实体设备的部署位置生成部署更新配置,并按照部署更新配置调整目标服务链上的目标微服务实体设备的部署位置。
其中,上述具体地调整可以为在中心计算资源池中增加微服务实体用于运行微服务3~5,并且更新边缘计算资源池1对应的请求转发表。对于边缘计算资源池1对应的请求转发表的更新包括:增加三条转发表项,将面向微服务3~5的请求按权重0.95转发到位于中心计算资源池的微服务实体上。此外,微服务部署设备修改了原有的三条转发表项,将面向微服务3~5的请求按权重0.05转发到本地资源池。其中,上述权重0.95和0.05是基于实验测算数据预先设置的。
上述操作完成后,整个微服务管理系统有4条服务链,除了原有的3条服务链,新增的服务链按如下方式运行。微服务1~2,及微服务7在边缘计算资源池1中执行,随后微服务2的处理结果通过网络传回中心计算资源池。最后,中心计算资源池中的微服务3~6完成业务处理后,再由微服务7将结果返回至客户端,新增的这条服务链承担了95%的业务增量。
在实际应用中,每一个微服务实体设备可以用于提供业务处理过程中的一种服务,该业务可以包括游戏业务、车联网业务、直播业务或者工业互联网业务等等,部署于不同类型的计算资源池中的微服务实体设备可以用于提供不同类型的服务。以游戏业务的应用场景为例,边缘计算资源池中微服务实体设备提供的服务可以为游戏画面渲染服务,由于边缘云环境距离客户端较近,通过边缘计算资源池中的微服务实体设备提供游戏画面渲染服务,有利于提高游戏画面切换的流畅性;中心计算资源池中微服务实体设备提供的服务可以为用户权限验证服务,由于中心云环境安全性更高,通过中心计算资源池中的微服务实体设备提供用户权限验证服务,有利于提高用户信息的安全性以及权限验证的准确性。
本申请实施例中的微服务部署设备可以基于目标服务链中各个目标微服务实体设备的负载信息和各个目标微服务实体设备之间的传输时延确定目标服务链的业务处理信息,并根据目标服务链的业务处理信息生成部署更新配置,按照部署更新配置调整目标服务链上的目标微服务实体设备的部署位置。在对目标微服务实体设备的部署位置进行调整的过程中,可以结合各个目标微服务实体设备之间的负载情况和各个目标微服务实体设备之间的传输时延对目标微服务实体设备的部署进行自适应的灵活调整,有利于降低部署调整后的目标服务链的业务响应时间。
本申请实施例还提供了一种计算机存储介质,该计算机存储介质中存储有程序指令,该程序指令被执行时,用于实现上述实施例中描述的相应方法。
再请参见图10,是本申请实施例的一种微服务部署装置的结构示意图,本申请实施例的微服务部署装置可以设置在微服务管理系统中的微服务部署设备中,可以为运行于微服务部署设备中的一个计算机程序(包括程序代码),该微服务管理系统中包括多个计算资源池及正在运行的目标服务链,每个计算资源池中部署有微服务实体设备;目标服务链包含至少一个目标微服务实体设备,至少一个目标微服务实体设备来自于至少一个计算资源池。
本申请实施例的所述装置的一个实现方式中,所述装置包括如下结构。
获取单元100,用于获取目标服务链的业务处理信息;业务处理信息至少包括业务响应时间,业务响应时间是基于各个目标微服务实体设备的负载信息和各个目标微服务实体设备之间的传输时延确定的;
处理单元101,用于根据目标服务链的业务处理信息生成部署更新配置,部署更新配置包括关于目标服务链上的目标微服务实体设备的部署位置的调整信息;
调整单元102,用于按照部署更新配置调整目标服务链上的目标微服务实体设备的部署位置。
在一个实施例中,处理单元101,具体用于构建与目标服务链对应的多条虚拟服务链,每条虚拟服务链包含至少一个微服务实体设备,至少一个微服务实体设备来自于至少一个计算资源池;每条虚拟服务链具备一个虚拟业务响应时间;从多条虚拟服务链中获取具备最小虚拟业务响应时间的目标虚拟服务链,当目标虚拟服务链的业务响应时间小于目标服务链的业务响应时间时,则按照目标虚拟服务链中的各个微服务实体设备的部署位置生成部署更新配置。
在一个实施例中,目标虚拟服务链的业务响应时间小于目标服务链的业务响应时间是指:目标服务链的业务响应时间与目标虚拟服务链的虚拟业务响应时间之间的差值大于阈值。
在一个实施例中,所述处理单元101,还用于将目标虚拟服务链中的各个微服务实体设备的部署位置与目标服务链中的各个目标微服务实体设备的部署位置进行对比,若二者的部署位置不同,则执行按照目标虚拟服务链中的各个微服务实体设备的部署位置生成部署更新配置的步骤。
在一个实施例中,计算资源池的类型包括中心计算资源池或边缘计算资源池;中心计算资源池设在中心云环境中,边缘计算资源池设在边缘云环境中;所述目标服务链上的目标微服务实体设备来自于至少一个计算资源池;调整单元102,具体用于按照部署更新配置在中心计算资源池和/或边缘计算资源池中调整对目标服务链上的目标微服务实体设备的部署。
在一个实施例中,所述装置还包括更新单元103,用于根据所述部署更新配置更新请求转发表。
在一个实施例中,所述请求转发表包括至少一个转发表项,每个转发表项包括:服务标识、目标标识和转发权重;所述装置还包括通信单元104,用于当接收到业务请求时,采用更新后的请求转发表将所述业务请求转发至计算资源池中执行业务处理的微服务实体设备。
在一个实施例中,每一个计算资源池对应一个请求转发表,每一个请求转发表中包括所属计算资源池中的微服务实体设备对应的转发表项,以及与所属计算资源池中的微服务实体设备存在调用关系的微服务实体设备的转发表项。
在一个实施例中,所述更新包括增加、删除和修改转发表项中的至少一种。
在一个实施例中,所述通信单元104,还用于若检测到所述目标服务链上用于最先处理业务请求的初始微服务实体设备的部署位置从所述边缘计算资源池调整为所述中心计算资源池,则向部署于所述边缘计算资源池的微服务部署设备发送请求转发通知,所述请求转发通知用于指示部署于所述边缘计算资源池的微服务部署设备在接收到业务请求后,将所述业务请求转发至部署于所述中心计算资源池的微服务部署设备。
在一个实施例中,所述获取单元100,具体用于获取所述目标服务链上的目标微服务实体的负载信息、所述目标微服务实体设备之间的传输时延以及调用关系;基于所述目标微服务实体的负载信息、所述目标微服务实体设备之间的传输时延以及调用关系,生成所述目标服务链上的目标微服务实体对应的有向无环运行DAG图;根据DAG关键路径算法确定所述目标服务链的业务响应时间。
在一个实施例中,所述处理单元101,还具体用于检测所述目标服务链上的目标微服务实体设备的初始部署模式;基于所述目标服务链上的目标微服务实体设备的初始部署模式构建所述目标服务链对应的虚拟服务链,所述虚拟服务链上的微服务实体的部署模式与所述目标服务链上的目标微服务实体设备的初始部署模式不同。
在一个实施例中,所述处理单元101,还具体用于通过穷举法列出所述目标服务链上的目标微服务实体设备在各个计算资源池中的所有部署模式;针对所述目标微服务实体设备构建部署模式为目标部署模式的虚拟服务链,所述目标部署模式为所述所有部署模式中除所述初始部署模式之外的部署模式。
在一个实施例中,每一个微服务实体设备用于提供业务处理过程中的一种服务,所述业务包括游戏业务或者车联网业务,部署于不同类型的计算资源池中的微服务实体设备用于提供不同类型的服务。
在本申请实施例中,上述各个单元的具体实现可参考前述各个附图所对应的实施例中相关内容的描述。
本申请实施例中的微服务部署设备可以基于目标服务链中各个目标微服务实体设备的负载信息和各个目标微服务实体设备之间的传输时延确定目标服务链的业务处理信息,并根据目标服务链的业务处理信息生成部署更新配置,按照部署更新配置调整目标服务链上的目标微服务实体设备的部署位置。在对目标微服务实体设备的部署位置进行调整的过程中,可以结合各个目标微服务实体设备的负载情况和各个目标微服务实体设备之间的传输时延对目标微服务实体设备的部署进行自适应的灵活调整,有利于降低部署调整后的目标服务链的业务响应时间。
再请参见图11,是本申请实施例的一种微服务部署设备的结构示意图,该微服务部署设备可以指微服务管理系统中包括的服务器或者服务器集群,微服务管理系统中包括多个计算资源池及正在运行的目标服务链,每个计算资源池中部署有微服务实体设备;目标服务链包含至少一个目标微服务实体设备,至少一个目标微服务实体设备来自于至少一个计算资源池。本申请实施例的所述微服务部署设备包括供电模块等结构,并包括处理器110、存储装置111以及通信接口112。所述处理器110、存储装置111以及通信接口112之间可以交互数据,由处理器110实现相应的微服务部署功能。
所述存储装置111可以包括易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储装置111也可以包括非易失性存储器(non-volatilememory),例如快闪存储器(flash memory),固态硬盘(solid-state drive,SSD)等;所述存储装置111还可以包括上述种类的存储器的组合。
所述处理器110可以是中央处理器110(central processing unit,CPU)。在一个实施例中,所述处理器110还可以是图形处理器110(Graphics Processing Unit,GPU)。所述处理器110也可以是由CPU和GPU的组合。在所述微服务部署设备中,可以根据需要包括多个CPU和GPU进行相应的微服务部署。
在一个实施例中,所述存储装置111用于存储程序指令。所述处理器110可以调用所述程序指令,实现如本申请实施例中上述涉及的各种方法。
在第一个可能的实施方式中,所述微服务部署设备的所述处理器110,调用所述存储装置111中存储的程序指令,用于获取目标服务链的业务处理信息;业务处理信息至少包括业务响应时间,业务响应时间是基于各个目标微服务实体设备的负载信息和各个目标微服务实体设备之间的传输时延确定的;根据目标服务链的业务处理信息生成部署更新配置,部署更新配置包括关于目标服务链上的目标微服务实体设备的部署位置的调整信息;按照部署更新配置调整目标服务链上的目标微服务实体设备的部署位置。
在一个实施例中,处理器110,具体用于构建与目标服务链对应的多条虚拟服务链,每条虚拟服务链包含至少一个微服务实体设备,至少一个微服务实体设备来自于至少一个计算资源池;每条虚拟服务链具备一个虚拟业务响应时间;从多条虚拟服务链中获取具备最小虚拟业务响应时间的目标虚拟服务链,当目标虚拟服务链的业务响应时间小于目标服务链的业务响应时间时,则按照目标虚拟服务链中的各个微服务实体设备的部署位置生成部署更新配置。
在一个实施例中,目标虚拟服务链的业务响应时间小于目标服务链的业务响应时间是指:目标服务链的业务响应时间与目标虚拟服务链的虚拟业务响应时间之间的差值大于阈值。
在一个实施例中,所述处理器110,还用于将目标虚拟服务链中的各个微服务实体设备的部署位置与目标服务链中的各个目标微服务实体设备的部署位置进行对比,若二者的部署位置不同,则执行按照目标虚拟服务链中的各个微服务实体设备的部署位置生成部署更新配置的步骤。
在一个实施例中,计算资源池的类型包括中心计算资源池或边缘计算资源池;中心计算资源池设在中心云环境中,边缘计算资源池设在边缘云环境中;所述目标服务链上的目标微服务实体设备来自于至少一个计算资源池;处理器110,还具体用于按照部署更新配置在中心计算资源池和/或边缘计算资源池中调整对目标服务链上的目标微服务实体设备的部署。
在一个实施例中,处理器110,还用于根据部署更新配置更新请求转发表。
在一个实施例中,所述请求转发表包括至少一个转发表项,每个转发表项包括:服务标识、目标标识和转发权重;处理器110,还用于当通过通信接口112接收到业务请求时,通过通信接口112采用更新后的请求转发表将所述业务请求转发至计算资源池中执行业务处理的微服务实体设备。
在一个实施例中,每一个计算资源池对应一个请求转发表,每一个请求转发表中包括所属计算资源池中的微服务实体设备对应的转发表项,以及与所属计算资源池中的微服务实体设备存在调用关系的微服务实体设备的转发表项。
在一个实施例中,所述更新包括增加、删除和修改转发表项中的至少一种。
在一个实施例中,处理器110,还用于若检测到目标服务链上用于最先处理业务请求的初始微服务实体设备的部署位置从边缘计算资源池调整为中心计算资源池,则通过通信接口112向部署于边缘计算资源池的微服务部署设备发送请求转发通知,该请求转发通知用于指示部署于边缘计算资源池的微服务部署设备在接收到业务请求后,将业务请求转发至部署于中心计算资源池的微服务部署设备。
在一个实施例中,处理器110,还具体用于获取目标服务链上的目标微服务实体的负载信息、目标微服务实体设备之间的传输时延以及调用关系,基于目标微服务实体的负载信息、目标微服务实体设备之间的传输时延以及调用关系,生成目标服务链上的目标微服务实体对应的有向无环运行DAG图,根据DAG关键路径算法确定目标服务链的业务响应时间。
在一个实施例中,所述处理器110,还具体用于检测目标服务链上的目标微服务实体设备的初始部署模式;基于目标服务链上的目标微服务实体设备的初始部署模式构建目标服务链对应的虚拟服务链,虚拟服务链上的微服务实体的部署模式与目标服务链上的目标微服务实体设备的初始部署模式不同。
在一个实施例中,所述处理器110,还具体用于通过穷举法列出目标服务链上的目标微服务实体设备在各个计算资源池中的所有部署模式;针对目标微服务实体设备构建部署模式为目标部署模式的虚拟服务链,目标部署模式为所有部署模式中除初始部署模式之外的部署模式。
在一个实施例中,每一个微服务实体设备用于提供业务处理过程中的一种服务,所述业务包括游戏业务或者车联网业务,部署于不同类型的计算资源池中的微服务实体设备用于提供不同类型的服务。
在本申请实施例中,上述处理器110的具体实现可参考前述各个附图所对应的实施例中相关内容的描述。
本申请实施例中的微服务部署设备可以基于目标服务链中各个目标微服务实体设备的负载信息和各个目标微服务实体设备之间的传输时延确定目标服务链的业务处理信息,并根据目标服务链的业务处理信息生成部署更新配置,按照部署更新配置调整目标服务链上的目标微服务实体设备的部署位置。在对目标微服务实体设备的部署位置进行调整的过程中,可以结合各个目标微服务实体设备的负载情况和各个目标微服务实体设备之间的传输时延对目标微服务实体设备的部署进行自适应的灵活调整,有利于降低部署调整后的目标服务链的业务响应时间。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本申请的部分实施例而已,当然不能以此来限定本申请之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本申请权利要求所作的等同变化,仍属于发明所涵盖的范围。
Claims (23)
1.一种微服务管理系统,其特征在于,所述微服务管理系统包括微服务部署设备及多个计算资源池,每个计算资源池中部署有微服务实体设备;所述微服务管理系统中包括正在运行的目标服务链,所述目标服务链包含至少一个目标微服务实体设备,所述至少一个目标微服务实体设备来自于至少一个计算资源池;其中,
所述微服务部署设备,用于获取所述目标服务链的业务处理信息,根据所述目标服务链的业务处理信息生成部署更新配置,以及按照所述部署更新配置调整所述目标服务链上的目标微服务实体设备的部署位置;所述业务处理信息至少包括业务响应时间,所述业务响应时间是基于所述各个目标微服务实体设备的负载信息和所述各个目标微服务实体设备之间的传输时延确定的;所述部署更新配置包括关于所述各个目标微服务实体的部署位置的调整信息。
2.如权利要求1所述的系统,其特征在于,所述计算资源池的类型包括中心计算资源池或边缘计算资源池;所述中心计算资源池设在中心云环境中,所述边缘计算资源池设在边缘云环境中;
所述微服务部署设备包括中心决策模块和服务部署执行模块,所述中心决策模块和所述服务部署执行模块均设在所述中心云环境中;
所述中心决策模块用于获取所述目标服务链的业务处理信息,以及根据所述目标服务链的业务处理信息生成部署更新配置;
所述服务部署执行模块用于按照所述部署更新配置调整所述目标服务链上的各个目标微服务实体设备的部署位置。
3.如权利要求2所述的系统,其特征在于,所述中心决策模块具体用于构建与所述目标服务链对应的多条虚拟服务链,每条虚拟服务链包含至少一个微服务实体设备,所述至少一个微服务实体设备来自于至少一个计算资源池;每条虚拟服务链具备一个虚拟业务响应时间;
从多条虚拟服务链中获取具备最小虚拟业务响应时间的目标虚拟服务链;
当所述目标虚拟服务链的业务响应时间小于所述目标服务链的业务响应时间时,则按照所述目标虚拟服务链中的各个微服务实体设备的部署位置生成所述部署更新配置。
4.如权利要求2所述的系统,其特征在于,所述微服务部署设备还包括多个业务负载采集模块,每个计算资源池中设有一个所述业务负载采集模块;所述业务负载采集模块用于收集所属计算资源池中的微服务实体设备的负载信息,并将收集到的负载信息上报给所述中心决策模块;
所述微服务部署设备还包括多个网络质量监控模块,每个计算资源池中设有一个所述网络质量监控模块;所述网络质量监控模块用于收集所属计算资源池中的微服务实体设备之间的传输时延,并将收集到的传输时延上报给所述中心决策模块。
5.如权利要求3所述的系统,其特征在于,所述中心决策模块具体用于根据业务负载采集模块上报的负载信息及所述网络质量监控模块上报的传输时延,生成所述目标服务链的业务处理信息。
6.如权利要求2所述的方法,其特征在于,所述微服务部署设备还包括多个服务请求分发模块,所述服务请求分发模块用于维护所述微服务管理系统中的请求转发表,还用于根据所述部署更新配置更新所述请求转发表。
7.一种微服务部署方法,其特征在于,所述方法由微服务管理系统中的微服务部署设备执行,所述微服务管理系统中包括多个计算资源池及正在运行的目标服务链,每个计算资源池中部署有微服务实体设备;所述目标服务链包含至少一个目标微服务实体设备,所述至少一个目标微服务实体设备来自于至少一个计算资源池;所述方法包括:
获取所述目标服务链的业务处理信息;所述业务处理信息至少包括业务响应时间,所述业务响应时间是基于所述各个目标微服务实体设备的负载信息和所述各个目标微服务实体设备之间的传输时延确定的;
根据所述目标服务链的业务处理信息生成部署更新配置,所述部署更新配置包括关于所述目标服务链上的目标微服务实体设备的部署位置的调整信息;
按照所述部署更新配置调整所述目标服务链上的目标微服务实体设备的部署位置。
8.如权利要求7所述的方法,其特征在于,所述根据所述目标服务链的业务处理信息生成部署更新配置,包括:
构建与所述目标服务链对应的多条虚拟服务链,每条虚拟服务链包含至少一个微服务实体设备,所述至少一个微服务实体设备来自于至少一个计算资源池;每条虚拟服务链具备一个虚拟业务响应时间;
从多条虚拟服务链中获取具备最小虚拟业务响应时间的目标虚拟服务链;
当所述目标虚拟服务链的业务响应时间小于所述目标服务链的业务响应时间时,则按照所述目标虚拟服务链中的各个微服务实体设备的部署位置生成所述部署更新配置。
9.如权利要求8所述的方法,其特征在于,所述目标虚拟服务链的业务响应时间小于所述目标服务链的业务响应时间是指:所述目标服务链的业务响应时间与所述目标虚拟服务链的虚拟业务响应时间之间的差值大于阈值。
10.如权利要求8所述的方法,其特征在于,所述方法还包括:
将所述目标虚拟服务链中的各个微服务实体设备的部署位置与所述目标服务链中的各个目标微服务实体设备的部署位置进行对比;
若二者的部署位置不同,则执行按照所述目标虚拟服务链中的各个微服务实体设备的部署位置生成所述部署更新配置的步骤。
11.如权利要求7所述的方法,其特征在于,所述计算资源池的类型包括中心计算资源池或边缘计算资源池;所述中心计算资源池设在中心云环境中,所述边缘计算资源池设在边缘云环境中;所述目标服务链上的目标微服务实体设备来自于至少一个计算资源池;
所述按照所述部署更新配置调整所述目标服务链上的目标微服务实体设备的部署位置,包括:
按照所述部署更新配置在所述中心计算资源池和/或所述边缘计算资源池中调整对所述目标服务链上的目标微服务实体设备的部署。
12.如权利要求7所述的方法,其特征在于,所述方法还包括:
根据所述部署更新配置更新请求转发表。
13.如权利要求12,其特征在于,所述请求转发表包括至少一个转发表项,每个转发表项包括:服务标识、目标标识和转发权重;所述方法还包括:
当接收到业务请求时,采用更新后的请求转发表将所述业务请求转发至计算资源池中执行业务处理的微服务实体设备。
14.如权利要求13所述的方法,其特征在于,每一个计算资源池对应一个请求转发表,每一个请求转发表中包括所属计算资源池中的微服务实体设备对应的转发表项,以及与所属计算资源池中的微服务实体设备存在调用关系的微服务实体设备的转发表项。
15.如权利要求13所述的方法,其特征在于,所述更新包括增加、删除和修改转发表项中的至少一种。
16.如权利要求11所述的方法,其特征在于,所述按照所述部署更新配置调整在所述中心计算资源池和/或所述边缘计算资源池中调整对所述目标服务链上的目标微服务实体设备的部署之后,所述方法还包括:
若检测到所述目标服务链上用于最先处理业务请求的初始微服务实体设备的部署位置从所述边缘计算资源池调整为所述中心计算资源池,则向部署于所述边缘计算资源池的微服务部署设备发送请求转发通知,所述请求转发通知用于指示部署于所述边缘计算资源池的微服务部署设备在接收到业务请求后,将所述业务请求转发至部署于所述中心计算资源池的微服务部署设备。
17.如权利要求7所述的方法,其特征在于,所述获取所述目标服务链的业务处理信息,包括:
获取所述目标服务链上的目标微服务实体的负载信息、所述目标微服务实体设备之间的传输时延以及调用关系;
基于所述目标微服务实体的负载信息、所述目标微服务实体设备之间的传输时延以及调用关系,生成所述目标服务链上的目标微服务实体对应的有向无环运行DAG图;
根据DAG关键路径算法确定所述目标服务链的业务响应时间。
18.如权利要求8所述的方法,其特征在于,所述构建与所述目标服务链对应的虚拟服务链,包括:
检测所述目标服务链上的目标微服务实体设备的初始部署模式;
基于所述目标服务链上的目标微服务实体设备的初始部署模式构建所述目标服务链对应的虚拟服务链,所述虚拟服务链上的微服务实体的部署模式与所述目标服务链上的目标微服务实体设备的初始部署模式不同。
19.如权利要求18所述的方法,其特征在于,所述基于所述目标服务链上的目标微服务实体设备的初始部署模式构建所述目标服务链对应的虚拟服务链,包括:
通过穷举法列出所述目标服务链上的目标微服务实体设备在各个计算资源池中的所有部署模式;
针对所述目标微服务实体设备构建部署模式为目标部署模式的虚拟服务链,所述目标部署模式为所述所有部署模式中除所述初始部署模式之外的部署模式。
20.如权利要求7所述的方法,其特征在于,每一个微服务实体设备用于提供业务处理过程中的一种服务,所述业务包括游戏业务或者车联网业务,部署于不同类型的计算资源池中的微服务实体设备用于提供不同类型的服务。
21.一种微服务部署装置,其特征在于,所述部署装置配置于微服务管理系统中的微服务部署设备,所述微服务管理系统中包括多个计算资源池及正在运行的目标服务链,每个计算资源池中部署有微服务实体设备;所述目标服务链包含至少一个目标微服务实体设备,所述至少一个目标微服务实体设备来自于至少一个计算资源池;所述部署装置包括:
获取单元,用于获取所述目标服务链的业务处理信息;所述业务处理信息至少包括业务响应时间,所述业务响应时间是基于所述各个目标微服务实体设备的负载信息和所述各个目标微服务实体设备之间的传输时延确定的;
处理单元,用于根据所述目标服务链的业务处理信息生成部署更新配置,所述部署更新配置包括关于所述目标服务链上的目标微服务实体设备的部署位置的调整信息;
调整单元,用于按照所述部署更新配置调整所述目标服务链上的目标微服务实体设备的部署位置。
22.一种微服务部署设备,其特征在于,所述微服务部署设备应用于微服务管理系统,所述微服务管理系统中包括多个计算资源池及正在运行的目标服务链,每个计算资源池中部署有微服务实体设备;所述目标服务链包含至少一个目标微服务实体设备,所述至少一个目标微服务实体设备来自于至少一个计算资源池,所述微服务部署设备包括处理器和存储装置,所述处理器和存储装置相互连接,其中,所述存储装置用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求7-20任一项所述的方法。
23.一种计算机存储介质,其特征在于,该计算机存储介质中存储有程序指令,该程序指令被执行时,用于实现如权利要求7-20任一项所述的方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010322014.0A CN111522661A (zh) | 2020-04-22 | 2020-04-22 | 一种微服务管理系统、部署方法及相关设备 |
PCT/CN2021/078026 WO2021213004A1 (zh) | 2020-04-22 | 2021-02-26 | 一种微服务管理系统、部署方法及相关设备 |
US17/721,416 US11900098B2 (en) | 2020-04-22 | 2022-04-15 | Micro-service management system and deployment method, and related device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010322014.0A CN111522661A (zh) | 2020-04-22 | 2020-04-22 | 一种微服务管理系统、部署方法及相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111522661A true CN111522661A (zh) | 2020-08-11 |
Family
ID=71903945
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010322014.0A Pending CN111522661A (zh) | 2020-04-22 | 2020-04-22 | 一种微服务管理系统、部署方法及相关设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11900098B2 (zh) |
CN (1) | CN111522661A (zh) |
WO (1) | WO2021213004A1 (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112148495A (zh) * | 2020-10-09 | 2020-12-29 | 网易(杭州)网络有限公司 | 游戏集群管理方法、装置、存储介质和电子设备 |
CN112559189A (zh) * | 2020-12-21 | 2021-03-26 | 厦门亿联网络技术股份有限公司 | 业务请求的处理方法、装置、电子设备及存储介质 |
CN112817567A (zh) * | 2021-01-28 | 2021-05-18 | 中国科学技术大学 | 一种微服务应用的openwhisk无服务框架迁移方法 |
CN113094235A (zh) * | 2021-04-14 | 2021-07-09 | 天津大学 | 一种尾延迟异常云审计系统及方法 |
CN113157436A (zh) * | 2021-03-02 | 2021-07-23 | 重庆度小满优扬科技有限公司 | 资源请求分发方法、装置、服务器和存储介质 |
CN113377497A (zh) * | 2021-06-08 | 2021-09-10 | 湖北第二师范学院 | 一种基于服务虚拟化的服务开发系统 |
CN113452758A (zh) * | 2021-06-04 | 2021-09-28 | 中国联合网络通信集团有限公司 | 一种业务访问方法及装置 |
WO2021213004A1 (zh) * | 2020-04-22 | 2021-10-28 | 腾讯科技(深圳)有限公司 | 一种微服务管理系统、部署方法及相关设备 |
CN113760301A (zh) * | 2020-12-30 | 2021-12-07 | 京东数科海益信息科技有限公司 | 一种微服务应用部署方法、装置、设备及存储介质 |
CN114064439A (zh) * | 2021-11-29 | 2022-02-18 | 北京字节跳动网络技术有限公司 | 微服务工作流运行时长预测方法、装置、设备以及介质 |
CN114615338A (zh) * | 2022-04-11 | 2022-06-10 | 河海大学 | 一种边缘环境中基于层共享的微服务部署方法及装置 |
WO2022178730A1 (zh) * | 2021-02-24 | 2022-09-01 | 西门子股份公司 | 微服务资源分配方法、装置和计算机可读介质 |
CN115037653A (zh) * | 2022-06-28 | 2022-09-09 | 北京奇艺世纪科技有限公司 | 业务流量监控方法、装置、电子设备和存储介质 |
CN115168055A (zh) * | 2022-09-02 | 2022-10-11 | 杭州乘云数字技术有限公司 | 基于微服务的OneAgent进程的采集与处理方法 |
WO2023207213A1 (zh) * | 2022-04-26 | 2023-11-02 | 马上消费金融股份有限公司 | 数据处理方法及装置 |
WO2024001755A1 (zh) * | 2022-06-27 | 2024-01-04 | 中国电信股份有限公司 | 服务链分配方法和系统、计算机设备和存储介质 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115396305B (zh) * | 2022-10-31 | 2022-12-27 | 中国人民解放军军事科学院系统工程研究院 | 一种基于微服务架构的异构网络设备统一管控方法和系统 |
CN116627681B (zh) * | 2023-07-25 | 2023-10-17 | 太平金融科技服务(上海)有限公司 | 业务请求处理方法、装置、计算机设备、介质和程序产品 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10516568B2 (en) * | 2014-09-30 | 2019-12-24 | Nicira, Inc. | Controller driven reconfiguration of a multi-layered application or service model |
US11138030B2 (en) * | 2016-11-17 | 2021-10-05 | Red Hat, Inc. | Executing code referenced from a microservice registry |
US10013550B1 (en) * | 2016-12-30 | 2018-07-03 | ShieldX Networks, Inc. | Systems and methods for adding microservices into existing system environments |
CN109218355B (zh) * | 2017-06-30 | 2021-06-15 | 华为技术有限公司 | 负载均衡引擎,客户端,分布式计算系统以及负载均衡方法 |
CN109254859B (zh) * | 2018-09-12 | 2021-10-26 | 中国人民解放军国防科技大学 | 一种多层控制的自适应微服务系统 |
US11074091B1 (en) * | 2018-09-27 | 2021-07-27 | Juniper Networks, Inc. | Deployment of microservices-based network controller |
US11032164B1 (en) * | 2019-05-30 | 2021-06-08 | Cox Communications, Inc. | Edge-based cloud application acceleration |
US10951692B1 (en) * | 2019-08-23 | 2021-03-16 | International Business Machines Corporation | Deployment of microservices based on back-end resource affinity |
CN110740194B (zh) * | 2019-11-18 | 2020-11-20 | 南京航空航天大学 | 基于云边融合的微服务组合方法及应用 |
CN111522661A (zh) * | 2020-04-22 | 2020-08-11 | 腾讯科技(深圳)有限公司 | 一种微服务管理系统、部署方法及相关设备 |
-
2020
- 2020-04-22 CN CN202010322014.0A patent/CN111522661A/zh active Pending
-
2021
- 2021-02-26 WO PCT/CN2021/078026 patent/WO2021213004A1/zh active Application Filing
-
2022
- 2022-04-15 US US17/721,416 patent/US11900098B2/en active Active
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021213004A1 (zh) * | 2020-04-22 | 2021-10-28 | 腾讯科技(深圳)有限公司 | 一种微服务管理系统、部署方法及相关设备 |
US11900098B2 (en) | 2020-04-22 | 2024-02-13 | Tencent Technology (Shenzhen) Company Limited | Micro-service management system and deployment method, and related device |
CN112148495A (zh) * | 2020-10-09 | 2020-12-29 | 网易(杭州)网络有限公司 | 游戏集群管理方法、装置、存储介质和电子设备 |
CN112148495B (zh) * | 2020-10-09 | 2023-08-08 | 网易(杭州)网络有限公司 | 游戏集群管理方法、装置、存储介质和电子设备 |
CN112559189A (zh) * | 2020-12-21 | 2021-03-26 | 厦门亿联网络技术股份有限公司 | 业务请求的处理方法、装置、电子设备及存储介质 |
CN113760301A (zh) * | 2020-12-30 | 2021-12-07 | 京东数科海益信息科技有限公司 | 一种微服务应用部署方法、装置、设备及存储介质 |
CN112817567A (zh) * | 2021-01-28 | 2021-05-18 | 中国科学技术大学 | 一种微服务应用的openwhisk无服务框架迁移方法 |
WO2022178730A1 (zh) * | 2021-02-24 | 2022-09-01 | 西门子股份公司 | 微服务资源分配方法、装置和计算机可读介质 |
CN113157436A (zh) * | 2021-03-02 | 2021-07-23 | 重庆度小满优扬科技有限公司 | 资源请求分发方法、装置、服务器和存储介质 |
CN113094235A (zh) * | 2021-04-14 | 2021-07-09 | 天津大学 | 一种尾延迟异常云审计系统及方法 |
CN113452758A (zh) * | 2021-06-04 | 2021-09-28 | 中国联合网络通信集团有限公司 | 一种业务访问方法及装置 |
CN113377497A (zh) * | 2021-06-08 | 2021-09-10 | 湖北第二师范学院 | 一种基于服务虚拟化的服务开发系统 |
CN113377497B (zh) * | 2021-06-08 | 2023-11-28 | 湖北第二师范学院 | 一种基于服务虚拟化的服务开发系统 |
CN114064439B (zh) * | 2021-11-29 | 2024-01-30 | 北京火山引擎科技有限公司 | 微服务工作流运行时长预测方法、装置、设备以及介质 |
CN114064439A (zh) * | 2021-11-29 | 2022-02-18 | 北京字节跳动网络技术有限公司 | 微服务工作流运行时长预测方法、装置、设备以及介质 |
CN114615338B (zh) * | 2022-04-11 | 2023-07-18 | 河海大学 | 一种边缘环境中基于层共享的微服务部署方法及装置 |
CN114615338A (zh) * | 2022-04-11 | 2022-06-10 | 河海大学 | 一种边缘环境中基于层共享的微服务部署方法及装置 |
WO2023207213A1 (zh) * | 2022-04-26 | 2023-11-02 | 马上消费金融股份有限公司 | 数据处理方法及装置 |
WO2024001755A1 (zh) * | 2022-06-27 | 2024-01-04 | 中国电信股份有限公司 | 服务链分配方法和系统、计算机设备和存储介质 |
CN115037653A (zh) * | 2022-06-28 | 2022-09-09 | 北京奇艺世纪科技有限公司 | 业务流量监控方法、装置、电子设备和存储介质 |
CN115037653B (zh) * | 2022-06-28 | 2023-10-13 | 北京奇艺世纪科技有限公司 | 业务流量监控方法、装置、电子设备和存储介质 |
CN115168055A (zh) * | 2022-09-02 | 2022-10-11 | 杭州乘云数字技术有限公司 | 基于微服务的OneAgent进程的采集与处理方法 |
Also Published As
Publication number | Publication date |
---|---|
US11900098B2 (en) | 2024-02-13 |
WO2021213004A1 (zh) | 2021-10-28 |
US20220236978A1 (en) | 2022-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111522661A (zh) | 一种微服务管理系统、部署方法及相关设备 | |
US10347013B2 (en) | Session idle optimization for streaming server | |
EP3637733B1 (en) | Load balancing engine, client, distributed computing system, and load balancing method | |
US11252220B2 (en) | Distributed code execution involving a serverless computing infrastructure | |
US20200382445A1 (en) | Market-based distributed resource allocation for edge-cloud systems | |
US7702784B2 (en) | Distributing and geographically load balancing location aware communication device client-proxy applications | |
EP2838243B1 (en) | Capability aggregation and exposure method and system | |
US20150133214A1 (en) | Video encoding based on areas of interest | |
US10146877B1 (en) | Area of interest subscription | |
KR101987960B1 (ko) | 트랜잭셔널 미들웨어 머신 환경에서 정확한 로드 밸런싱을 지원하기 위한 시스템 및 방법 | |
Kang et al. | A cluster-based decentralized job dispatching for the large-scale cloud | |
US20150130815A1 (en) | Multiple parallel graphics processing units | |
CN112187864A (zh) | 负载均衡方法、装置、存储介质及电子设备 | |
US11042413B1 (en) | Dynamic allocation of FPGA resources | |
US11388106B2 (en) | Method, device, and computer program product for edge resource aggregation | |
US10691700B1 (en) | Table replica allocation in a replicated storage system | |
CN108667920B (zh) | 一种雾计算环境业务流量加速系统及其业务流量加速方法 | |
US11223869B2 (en) | Content stream multicasting with relative latency for media devices | |
Russo et al. | A framework for offloading and migration of serverless functions in the Edge–Cloud Continuum | |
Negrão et al. | Task based load balancing for cloud aware massively Multiplayer Online Games | |
CN114390053B (zh) | 业务内容调度方法、装置、设备及存储介质 | |
CN115516831B (zh) | Sd-wan集线器和辐条的自动配设 | |
US20230359501A1 (en) | Accelerator management device, communication system, accelerator management method, and accelerator management program | |
JP6246677B2 (ja) | 通信システム、コントロール装置及び処理装置切替方法 | |
CN117519958A (zh) | 一种应用部署方法、系统及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40027904 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |