CN113722077B - 数据处理方法、***、相关设备、存储介质及产品 - Google Patents
数据处理方法、***、相关设备、存储介质及产品 Download PDFInfo
- Publication number
- CN113722077B CN113722077B CN202111286046.0A CN202111286046A CN113722077B CN 113722077 B CN113722077 B CN 113722077B CN 202111286046 A CN202111286046 A CN 202111286046A CN 113722077 B CN113722077 B CN 113722077B
- Authority
- CN
- China
- Prior art keywords
- data
- edge
- target
- type
- central cluster
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- 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
- G06F9/505—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 considering the load
-
- 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/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- 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/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/547—Messaging middleware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了一种数据处理方法、***、相关设备、存储介质及产品,其中方法包括:获取目标云应用的运行数据;当运行数据为第一类数据时,将运行数据通过目标边缘服务器与中心集群之间的第一通信链路发送给中心集群,以使中心集群采用与第一类数据匹配的服务对第一类数据进行响应;第一通信链路是与第一类数据的实时性要求相匹配的链路;当运行数据为第二类数据时,将运行数据通过第二通信链路发送给中心集群,以使中心集群采用与第二类数据匹配的服务对第二类数据进行响应,可避免资源浪费。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种数据处理方法、***、相关设备、存储介质及产品。
背景技术
随着云计算的不断深入发展,云应用呈现了蓬勃发展的趋势,当前为了支持云应用的运行,通常是将云应用部署在边缘服务器的运行容器中运行,此外,为了支持云应用各种复杂业务的实现,还会为边缘服务器匹配部署较多的公共服务组件,以支持边缘服务器在云应用过程中的各种业务实现。而由于各客户端的位置较为分散,因此,为了使各云应用的操作对象通过相应的客户端具备较好的操作体验,支持该云应用运行的边缘服务器均需要匹配部署较多的公共服务组件。由此可见,采用现有的云应用运行的方法,将会造成组件资源的浪费。
发明内容
本发明实施例提供了一种数据处理方法、***、相关设备、存储介质及产品,可避免对组件资源的浪费。
一方面,本发明实施例提供了一种数据处理方法,应用于云处理***,所述云处理***包含中心集群和多个边缘服务器,所述多个边缘服务器共享由所述中心集群提供的多种服务,所述方法由目标边缘服务器执行,所述目标边缘服务器包括所述多个边缘服务器中,与目标云应用的客户端之间的物理距离最近的任一个边缘服务器,包括:
获取目标云应用的运行数据;
当所述运行数据为第一类数据时,将所述运行数据通过所述目标边缘服务器与所述中心集群之间的第一通信链路发送给所述中心集群,以使所述中心集群采用与所述第一类数据匹配的服务对所述第一类数据进行响应;所述第一通信链路是与所述第一类数据的实时性要求相匹配的链路;
当所述运行数据为第二类数据时,将所述运行数据通过第二通信链路发送给所述中心集群,以使所述中心集群采用与所述第二类数据匹配的服务对所述第二类数据进行响应,其中,所述第二通信链路是与所述第二类数据的实时性要求相匹配的链路,且所述第一类数据和所述第二类数据的实时性要求不同。
再一方面,本发明实施例提出了一种云处理***,所述云处理***包含中心集群和多个边缘服务器,所述多个边缘服务器共享由所述中心集群提供的多种服务,所述多个边缘服务器包括目标边缘服务器,所述目标边缘服务器包括所述多个边缘服务器中,与目标云应用的客户端之间的物理距离最近的任一个边缘服务器;
所述目标边缘服务器用于获取目标云应用的运行数据,并在所述运行数据为第一类数据时,通过与所述中心集群之间的第一通信链路,将所述运行数据发送给所述中心集群;以及,在所述运行数据为第二类数据时,通过与所述中心集群之间的第二通信链路,将所述运行数据发送给所述中心集群;所述第一通信链路是与所述第一类数据的实时性要求相匹配的链路,所述第二通信链路是与所述第二类数据的实时性要求相匹配的链路,且所述第一类数据和所述第二类数据的实时性要求不同;
所述中心集群用于接收由所述目标边缘服务器发送的运行数据,并在所述运行数据为第一类数据时,通过与所述第一类数据匹配的服务对所述第一类数据进行响应;以及,所述中心集群还在所述运行数据为第二类数据时,通过与所述第二类数据匹配的服务对所述第二类数据进行响应。
再一方面,本发明实施例提供了一种数据处理装置,应用于云处理***,所述云处理***包含中心集群和多个边缘服务器,所述多个边缘服务器共享由所述中心集群提供的多种服务,所述数据处理装置具体是运行于目标边缘服务器中的一个计算机程序(包括程序代码),所述目标边缘服务器包括所述多个边缘服务器中,与目标云应用的客户端之间的物理距离最近的任一个边缘服务器,所述装置包括:
获取单元,用于获取目标云应用的运行数据;
发送单元,用于当所述运行数据为第一类数据时,将所述运行数据通过所述目标边缘服务器与所述中心集群之间的第一通信链路发送给所述中心集群,以使所述中心集群采用与所述第一类数据匹配的服务对所述第一类数据进行响应;所述第一通信链路是与所述第一类数据的实时性要求相匹配的链路;
所述发送单元,还用于当所述运行数据为第二类数据时,将所述运行数据通过第二通信链路发送给所述中心集群,以使所述中心集群采用与所述第二类数据匹配的服务对所述第二类数据进行响应,其中,所述第二通信链路是与所述第二类数据的实时性要求相匹配的链路,且所述第一类数据和所述第二类数据的实时性要求不同。
再一方面,本发明实施例提供了一种边缘服务器,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储支持边缘服务器执行上述方法的计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如下步骤:
获取目标云应用的运行数据;
当所述运行数据为第一类数据时,将所述运行数据通过所述目标边缘服务器与所述中心集群之间的第一通信链路发送给所述中心集群,以使所述中心集群采用与所述第一类数据匹配的服务对所述第一类数据进行响应;所述第一通信链路是与所述第一类数据的实时性要求相匹配的链路;
当所述运行数据为第二类数据时,将所述运行数据通过第二通信链路发送给所述中心集群,以使所述中心集群采用与所述第二类数据匹配的服务对所述第二类数据进行响应,其中,所述第二通信链路是与所述第二类数据的实时性要求相匹配的链路,且所述第一类数据和所述第二类数据的实时性要求不同。
再一方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有程序指令,所述程序指令被处理器执行时,所述程序指令被处理器执行时,用于执行如第一方面所述的数据处理方法。
在本申请实施例中,基于云处理***对提供公共服务的中心集群的集中管理,该云处理***中的任一边缘服务器可通过对中心集群中相应服务组件的调用进行公共服务的共享复用,从而可避免对公共组件的重复部署,提升中心集群的资源利用率。由于该云处理***中的边缘服务器与中心集群之间的通信链路分别包括第一通信链路和第二通信链路,那么,如果目标边缘服务器获取到目标云应用的运行数据后,若确定该运行数据为第一类数据,则可通过该第一通信链路将该运行数据发送给中心集群,并在中心集群中通过调用相应的服务对该第一类数据进行响应,而如果目标边缘服务器获取到的运行数据为第二类数据,则该目标边缘服务器可通过与中心集群之间的第二通信链路将该运行数据发送给中心集群,并由中心集群调用相应的服务对该第二类数据进行响应处理,由于目标边缘服务器在对中心集群中提供的公共服务进行调用时,将通过不同的通信链路来实现,也就是说,该目标边缘服务器与中心集群之间的不同业务交互和数据传输是基于不同的通信链路来实现的,也就使得该目标边缘服务器在基于不同业务对中心集群中的公共服务进行调用时,不同业务的数据之间的数据通路是相互独立且互不影响的,从而可实现对不同业务的并发执行,并可提升各业务数据在目标边缘服务器和中心集群之间传输的安全性。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本发明实施例提供的一种云应用的运行示意图;
图1b是本发明实施例提供的一种云处理***的示意图;
图1c是本发明实施例提供的另一种云处理***的示意图;
图2是本发明实施例提供的一种数据处理方法的示意流程图;
图3是本发明实施例提供的一种云应用中相关的数据流的示意图;
图4是本发明实施例提供的另一种数据处理方法的示意流程图;
图5a是本发明实施例提供的一种云处理***的架构的示意图;
图5b是本发明实施例提供的另一种云处理***的架构的示意图;
图5c是本发明实施例提供的一种边缘点的自动发现流程的示意图;
图5d是本发明实施例提供的一种目标云游戏的处理流程的示意图;
图6是本发明实施例提供的一种数据处理装置的示意性框图;
图7是本发明实施例提供的一种边缘服务器的示意性框图。
具体实施方式
本申请实施例提出了一种数据处理方法,该数据处理方法可应用在云处理***中,而在该云处理***中,用于运行云应用的多个边缘服务器被分别部署到不同的物理位置区域(或物理边缘区域)中,而处于不同位置区域的边缘服务器用于支持相应区域范围内的客户端中云应用的应用画面的显示,从而也就使得云应用的客户端可访问物理距离相对较近(即物理距离小于等于距离阈值)的边缘服务器,并从访问的边缘服务器中获取到针对该云应用画面的渲染资源,从而可进一步基于该渲染资源对该云应用的应用画面进行渲染显示。通过对物理距离相对较近的边缘服务器的访问并进行渲染资源的获取,可有效提升客户端的应用画面的渲染速度,从而提升云应用在客户端中的运行流畅度。其中,云应用是以云计算为基础的应用程序,在该运行模式下,所有的云应用都在服务器端运行,并将渲染完毕后的应用画面压缩后通过网络传送给客户端,那么对应地,客户端则可通过终端设备获取与该云应用相关的操作事件,如触屏事件、键盘鼠标事件、摇杆事件等,并通过网络传输到服务器端,从而达到与该云应用进行交互的目的。可以理解,用于支持云应用运行的服务器端即是上述的边缘服务器,该边缘服务器通过创建云端实例以支持云应用的运行,在一个实施例中,云端实例是指在云应用过程中,实际为该云应用运行的一个虚拟的运行容器,云应用在边缘服务器中即是具体运行在该运行容器中的,其中,该运行容器具体可以是安卓(Android)容器等。
在一个实施例中,云端实例还包括传输容器和代理容器,其中,运行容器、传输容器、代理容器及客户端之间的连接关系可如图1a所示,该云端实例包括由图1a的虚线框标识的运行容器、传输容器及代理容器。其中,该运行容器用于安装云应用,并运行云应用,且可将该云应用的应用画面编码后发送给传输容器,传输容器的一侧与客户端建立通信连接,另一侧则和运行容器(或运行容器的编码进程)建立通信连接,因此,该传输容器可在从运行容器获取到应用画面的编码数据后,将该编码数据发送给客户端,客户端从而可对获取到的编码数据进行解码,并在界面中对应用画面进行渲染显示,其中,该传输容器可以是WebRTC容器(一种即时通信容器),该传输容器和客户端之间建立的通信连接可以是P2P连接(一种点对点连接)。另外,该代理(Instance)容器也可成为代理器,该代理容器用于维护应用实例的创建/销毁以及生命周期过程中的各种状态变迁,并为运行容器和传输容器建立与中心集群内部的通信通道,比如访问中心集群的数据库和消息中间件等。
在一个实施例中,该云处理***还包括中心集群,该中心集群用于部署云应用的公共服务,如运行分析服务和基础指令服务等,其中,运行分析服务指用于对云应用的运行情况,如卡顿情况和延迟情况进行分析的服务,而基础指令服务是与针对该云应用的操作服务相对的,该操作服务是指对应用画面进行更新的服务,基础指令服务包括为该云应用提供的登陆鉴权以及数据存储等服务,可以理解,对应用画面的更新处理可由边缘服务器的应用容器来执行,而除针对该应用画面的更新请求之外的其他操作指令均需要通过调用中心集群中的公共组件来执行,所以,在本申请实施例中,可将除请求对应用画面进行更新的任一其他服务作为基础指令服务。在一个实施例中,该云处理***包括的中心集群及边缘服务器之间的连接关系可如图1b所示,其中,该云处理***中的多个边缘服务器共享由中心集群提供的多种服务,其中,该中心集群可以是由一个或多个计算机设备(如图1b中由10标记的设备)构成,该边缘服务器(包括如图1b中由11标记的任一服务器)也可以是一个服务器,同样也可以是由多个服务器构成的服务器集群,在本申请实施例中,主要以该边缘服务器为一个服务器为例进行说明,且不同的边缘服务用于支持不同地理位置区域中的云应用的运行,如图1b中由110标记的服务器与其他服务器对应支持云应用运行的地理位置区域不同。
基于该云处理***的部署,该云处理***中的多个边缘服务器将共享由中心集群提供的公共服务,从而也就可使边缘服务器可通过与中心集群之间的通信连接,对中心集群的公共服务进行调用,也就实现了将中心集群中的公共服务在不同地理位置区域的边缘服务器中进行复用,也就是说,基于在中心集群中进行公共服务的部署,及各边缘服务器对中心集群中的公共服务的共享复用,可不再在边缘服务器中部署公共服务,因此,该边缘服务器则可轻量部署,即在该边缘服务器中可仅部署用于支持云应用运行的相关组件,即是可仅在该边缘服务器中部署与云应用的应用画面相关的出流组件。在一个实施例中,中心集群和边缘服务器中组件部署可如图1c所示。如图1c所示,该中心集群通过应用业务平台接入到不同的应用后台,该中心集群中包括提供各公共服务的公共组件,以及基础组件,而各边缘服务器通过复用上层中心集群中的公共组件和基础组件,使得各边缘服务器可不再进行公共组件和基础组件的重复部署,仅需要在边缘服务器中部署云应用实例即可。
在一个实施例中,由于该公共服务在中心集群中的实现,是通过在中心集群中部署相应的公共组件实现的,如该公共服务具体可包括鉴权,缓存,调度等,其中,在中心集群中具体部署的公共组件则可包括鉴权组件,缓存组件,调度组件等,那么由于各边缘服务器可通过共享复用中心集群中各公共组件所提供的公共服务,也就可避免在边缘服务器中重复部署公共组件,进而提升中心集群中各公共组件的使用率,避免组件资源的浪费。
在一个实施例中,基于该云处理***中的各边缘服务的部署方式,使得边缘服务器在运行云应用时,该边缘服务器仅用于执行应用画面的出流服务(即输出应用画面的编码数据的服务),而其他的公共服务的实现将通过与中心集群之间的通信连接对中心集群中相应的公共组件进行调用。而边缘服务器与中心集群之间的通信连接分别包括第一通信链路和第二通信链路,其中,该边缘服务器可通过第一通信链路将为第一类数据的运行数据发送给中心集群,以使中心集群通过与该第一类数据匹配的服务对该第一类数据进行响应,而在该运行数据为第二类数据时,则该边缘服务器在可将为第二类数据的运行数据通过第二通信链路发送到中心集群中,并使该中心集群可通过调用与该第二类数据匹配的服务对该第二类数据进行响应。也就是说,在该云处理***中,边缘服务器用于获取云应用的运行数据,并在运行数据为第一类数据时,通过与中心集群之间的第一通信链路,将运行数据发送给中心集群;以及,在运行数据为第二类数据时,通过与中心集群之间的第二通信链路,将运行数据发送给中心集群;第一通信链路是与第一类数据的实时性要求相匹配的链路,第二通信链路是与第二类数据的实时性要求相匹配的链路,且第一类数据和第二类数据的实时性要求不同;该中心集群则用于接收由边缘服务器发送的运行数据,并在运行数据为第一类数据时,通过与第一类数据匹配的服务对第一类数据进行响应;以及,中心集群还在运行数据为第二类数据时,通过与第二类数据匹配的服务对第二类数据进行响应。可以理解,通过两条不同的通信链路分别对该中心集群中的不同服务的调用,可有效避免不同通路之间的相互影响,进而保证边缘服务器在调用中心集群中各公共服务时的业务安全性,也就可提升数据的安全性,以及该云处理***的稳定性。
基于上述的云处理***,以云应用为目标云应用为例,对基于该云处理***对该目标云应用相关数据指令的处理过程进行详细描述,其中,本申请实施例主要以执行该目标云应用的目标边缘服务器为执行主体进行详细说明,其中,该目标云应用被运行在多个不同的边缘服务器中,一个边缘服务器用于支持一个相应物理位置范围内的客户端中云应用的运行,而该目标边缘服务器则可以是运行该目标云应用的多个边缘服务器中,与该目标云应用的客户端之间的物理距离最近的任一个边缘服务器,或者,也可以不是对应物理距离最近的边缘服务器。其中,在多个边缘服务器中,与目标云应用的客户端之间的物理距离最近的边缘服务器处于正常工作的情况下(或者,正常工作且被占用的处理资源小于阈值的情况下),优先将与该目标云应用的客户端之间的物理距离最近的边缘服务器作为目标边缘服务器,而如果与该目标云应用的客户端之间的物理距离最近的边缘服务器处于异常工作状态,或者被占用的处理资源大于等于阈值的情况下,可将其他非物理距离最近的边缘服务器作为目标边缘服务器,如可将对应物理距离次近的边缘服务器作为目标边缘服务器。在本申请实施例中,主要以该目标边缘服务器是与该目标云应用的客户端之间的物理距离最近的边缘服务器为例进行详细说明的。其中,具体可参见如图2所示的数据处理方法的示意流程图,如图2所示,该方法可:
S201,获取目标云应用的运行数据。
S202,当运行数据为第一类数据时,将运行数据通过目标边缘服务器与中心集群之间的第一通信链路发送给中心集群,以使中心集群采用与第一类数据匹配的服务对第一类数据进行响应;第一通信链路是与第一类数据的实时性要求相匹配的链路。
在步骤S201和步骤S202中,目标云应用是目标边缘服务器支持运行的云应用中的任意一个,而该目标云应用的应用画面是根据相应的客户端从该目标边缘服务器中获取的渲染资源进行渲染的,在一个实施例中,当目标云应用在目标边缘服务器中运行时,该目标边缘服务器可获取得到与该目标云应用的运行过程相关的运行数据,其中,该目标云应用的运行数据主要包括音视频数据,针对该目标云应用的基础指令数据(或应用基础指令,具体可以是鉴权指令或者数据存储指令等)和支持对该目标云应用的运行情况进行分析的数据(如日志数据,摘要数据等)。另外,与该目标云应用相关的数据通路有如图3所示的三种类型,如图3所示,该音视频数据是通过目标边缘服务器与客户端之间的数据通路进行传输的,一般是由目标边缘服务器中的传输容器流向客户端,可以理解,由于客户端是通过从目标边缘服务器获取的音视频数据(或音视频数据的编码数据)进行应用画面的渲染显示的,所以,用于传输该音视频数据的数据通道的实时性要求最高,且要求在数据传输过程中,数据尽量不能丢失,以避免丢帧卡顿现象而影响用户体验。
此外,该基础指令数据也可称为应用基础指令,该应用基础指令是指客户端所发送的一些通用指令,该基础指令数据可通过网关被转发到中心集群中的公共组件,以请求公共服务,或者被转发到目标边缘服务器中,以请求对应用画面进行更新显示。其中,该被转发到公共组件并进行请求的公共服务可以包括开启应用的服务,开启计费的服务,以及实例控制权转移等服务,由此可见,基础指令数据涉及的通信链路包括客户端与中心集群中公共组件之间的通信链路,以及客户端与目标边缘服务器之间的通信链路,而针对基础指令数据的数据通路有一定的实时性要求,但其在丢失后可触发客户端进行重发,所以,基础指令数据的数据通路相比于音视频数据而言的实时性要求相对较低,另外,由于对目标云应用的运行情况进行分析的过程可以是实时进行的过程,也可以是按照分析需求执行的,所以,支持对该目标云应用的运行情况进行分析的数据的实时性要求是上述提及数据的实时性要求最低的。在一个实施例中,由于目标边缘服务器获取到的运行数据进行公共服务请求的实时性要求存在差异,因此,该目标边缘服务器可基于运行数据的实时性要求差异,将获取到的需要请求公共服务的运行数据划分为第一类数据和第二类数据,其中,如果该第一类数据是指对应实时性要求较低的运行数据,那么,该第二类数据则是指对应实时性要求较高的运行数据;或者,该第一类数据也可以是指对应实时性要求较高的运行数据,而第二类数据指对应实时性要求较低的运行数据,在本申请实施例中,主要以该第一类数据的实时性要求低于(或小于)第二类数据的实时性要求的情况进行说明,那么也就可以理解,如果该运行数据包括的是基础指令数据,则该基础指令数据为第二类数据,而如果该运行数据包括的是支持对该目标云应用的运行情况进行分析的数据,则用于对该目标云应用的运行情况进行分析的数据则为第一类数据。
在一个实施例中,支持对该目标云应用的运行情况进行分析的数据可以是由目标边缘服务器的应用实例在将音视频数据发送到客户端的过程中产生的帧数据的摘要数据,那么,该摘要数据则可用于对将云应用的音视频数据发送到客户端进行应用画面的渲染显示的过程进行延迟和卡顿分析等,并可基于该延迟和卡顿分析,最终量化出该云应用的运行情况。其中,基于对目标云应用进行分析的过程是由公共组件中的分析组件提供的运行分析服务来执行的,因此,目标边缘服务器在采集对该目标云应用的运行情况进行分析的数据(如上述的摘要数据)后,可进一步将采集到的数据发送到该分析组件来进行分析,而由于对云应用的运行情况进行分析的过程可以是实时进行的,也可以在存在分析需求时才执行,所以,在目标边缘服务器采集到对目标云应用的运行情况进行分析的数据后,对该数据进行实时性响应的要求也不高,但尽量不能丢失,如果该数据被丢失将影响针对该目标云应用的运行情况的分析结果。此外,对该目标云应用的运行情况进行分析的数据除了包括上述的用于对该目标边缘服务器的应用实例发送音视频数据的过程进行记录的摘要数据,还可包括该目标云应用在其他运行过程(如后台运行时)时产生的日志数据,从而可对该目标云应用的运行过程进行全面评估,如对该目标云应用在运行过程中的资源占用情况等进行评估,在本申请实施例中,主要是以对该目标云应用的运行情况进行分析的数据为对音视频数据传输过程进行记录的摘要数据为例进行详细说明的。
基于上述的目标云应用在运行过程中产生的相关数据所对应的数据通路,目标边缘服务器可基于上述相关数据的实时性要求,以及上述三种数据的数据流向,来采用上述云处理***中涉及的不同通信链路,来对上述三种数据进行传输,从而也就可避免不同通信链路之间的相互影响,提升对云应用的相关数据进行处理时的可靠性,也就能提升该云处理***的稳定性。在一个实施例中,上述的云处理***同样设计了三种对应的不同通信链路,其中,在该云处理***中,中心集群与边缘服务器(如目标边缘服务器)之间的通信链路包括第一通信链路和第二通信链路,边缘服务器与客户端之间包括的通信链路则用于传输上述的音视频数据。由于云处理***中的中心集群与边缘服务器之间包括第一通信链路和第二通信链路进行数据交互,且目标云应用相关的基础指令数据和用于对目标云应用的运行情况进行分析的数据在被目标边缘服务器获取到后,均需要发送到中心集群,并调用中心集群的相关公共服务对该基础指令数据进行相应,及对该目标云游戏的运行情况进行分析处理。因此,为了避免在发送基础指令数据和用于对目标云应用的运行情况进行分析的数据过程中所产生的业务冲突问题,目标边缘服务器可分别采用不同的通信链路将基础指令数据和支持对该目标云应用的运行情况进行分析的数据发送到中心集群中。
基于目标边缘服务器在获取到运行数据后的实时性要求,该目标边缘服务器可在获取到该运行数据后,如果获取到的运行数据为用于对目标云应用的运行情况进行分析的数据,则可确定获取到的运行数据为第一类数据,并进而可通过第一通信链路发送该运行数据,从而可在中心集群获取到该第一类数据后,采用与该第一类数据匹配的服务对该第一类数据进行响应,而如果该目标边缘服务器获取到的运行数据为基础指令数据,则该目标边缘服务器可确定获取到的运行数据为第二类数据,并可通过第二通信链路发送该第二类数据,以实现基于运行数据的实时性要求分别采用第一通信链路或第二通信链路进行数据的发送,可有效提升云处理***的安全性,并且可保证数据发送过程中的数据安全性。也就是说,如果该目标边缘服务器获取到的运行数据是用于对该目标云应用的运行情况进行分析的数据,则该目标边缘服务器可通过第一通信链路将用于对该目标云应用的运行情况进行分析的数据发送给中心集群,具体地,用于对该目标云应用的运行情况进行分析的数据是由该目标边缘服务器通过该第一通信链路发送给中心集群的分析组件的,从而实现对中心集群中由该分析组件提供的运行分析服务的调用,而如果目标边缘服务器获取到的运行数据是针对目标云应用的基础指令数据后,则可通过第二通信链路进行数据的发送,即可转而执行步骤S203。
在一个实施例中,如果该第一类数据是实时性要求较低的用于对目标云应用的运行情况进行分析的数据,那么,该目标边缘服务器在获取到该第一类数据后,可立即通过第一通信链路将该第一类数据发送到中心集群,从而可实现对目标云应用的运行情况进行实时分析,或者,该目标边缘服务器也可在获取到该第一类数据后,先将获取到的第一类数据缓存到存储空间中,并在确定存在对目标云应用的运行情况进行分析的需求时,再通过第一通信链路将该第一类数据发送到中心集群中以对该目标云应用的运行情况进行分析。而在目标边缘服务器获取到该第一类数据后,该目标边缘服务器可先将获取到该第一类数据备份存储到本地磁盘中,然后再通过公网将第一类数据通过第一通信链路发送到中心集群中,从而使得目标边缘服务器可在确定第一类数据在传输过程中被丢失时,基于在本地磁盘中备份的第一类数据发起重传,以保证中心集群可接收到正确且完整的第一类数据,进而可提升对目标云应用进行分析的准确度。
在一个实施例中,该目标边缘服务器在获取到第一类数据后,可将该第一类数据缓存到本地的存储空间中,也可将该第一类数据发送到区块链网络中进行缓存,并在后续需要将该第一类数据发送到中心集群时,从该区块链网络中获取该第一类数据。基于在区块链网络中对第一类数据的缓存,可有效避免第一类数据被篡改。在一个实施例中,该目标边缘服务器获取的目标云应用的运行数据,是基于物理距离范围进行获取的,由于云处理***中的任一边缘服务器用于支持一个物理范围内的云应用对应客户端的运行,且该任一边缘服务器所支持运行的云应用的客户端与该任一边缘服务器之间的物理距离,必然小于该云应用的客户端与其他边缘服务器之间的物理距离,那么,目标边缘服务器获取的目标云应用的运行数据则是从与该目标边缘服务器之间的物理距离最近的目标云应用的客户端中获取得到的。其中,目标边缘服务器可通过该目标边缘服务器的互联网协议地址(Internet Protocol Address,IP)与相应客户端对应终端设备的IP地址,确定该目标边缘服务器与相应客户端之间的物理距离。
S203,当运行数据为第二类数据时,将运行数据通过第二通信链路发送给中心集群,以使中心集群采用与第二类数据匹配的服务对第二类数据进行响应,其中,第二通信链路是与第二类数据的实时性要求相匹配的链路,且第一类数据和第二类数据的实时性要求不同。
目标云应用在目标边缘服务器中运行时,如果该目标边缘服务器获取到的运行数据为基础指令数据,则该目标边缘服务器可确定获取到的运行数据为第二类数据,进而可通过第二通信链路将该基础指令数据发送到中心集群进行相应处理。其中,基础指令数据与目标云应用的应用界面的显示相关,而该目标云应用的应用画面是被下发到客户端进行显示的,那么,基于客户端对目标云应用的应用画面的显示,该目标云应用的操作对象可通过在客户端中显示的应用画面,向目标边缘服务器发送针对该目标云应用的相关指令数据,其中,应用对象通过客户端向目标边缘服务器发送的相关指令数据包括基础指令数据和操作指令数据。在一个实施例中,在该客户端中显示的应用画面包括基础画面和操作画面,该操作画面是指进入到实际的应用环境中的界面(如该目标云应用的应用主界面),而该基础画面则是指未进入到实际的应用环境之前,显示给应用对象的界面,例如可以是登陆界面,应用资源更新界面等。可以理解,当在客户端中显示的应用画面为基础画面时,基于操作用户在该基础画面中执行的操作所生成的指令数据为基础指令数据,而在客户端显示的操作画面时,基于操作用户在操作画面中执行的操作生成的指令数据则成为操作指令数据。其中,由于该操作指令数据是用于对目标云应用的应用画面的显示进行控制的指令,如针对目标云游戏中的虚拟对象进行控制的指令,那么,该基础指令数据则包括除对虚拟对象进行控制外的其他通用指令均可称为基础指令数据。其中,该操作对象是指触发运行目标云应用,并对该目标云应用进行操控的对象。在一个实施例中,如果该目标云应用是目标云游戏,该操作画面则是指进入到实际游戏环境的界面,那么,目标云游戏实际的游戏环境对应的操作画面中,对应操作对象可对显示在该操作画面中的虚拟人物进行操控。
由于目标边缘服务器在从客户端获取到针对目标云应用的操作指令数据后,将基于该操作指令数据对应用画面进行更新,因此,该目标边缘服务器可在获取到该操作指令数据后,触发运行该目标云应用的运行容器对当前显示在客户端中的应用画面进行更新,并将更新后的应用画面编码后发送给传输容器,并最终下发到客户端中,从而使客户端中显示的应用画面被更新。在另一种实现方式中,如果目标边缘服务器从客户端获取到针对目标云应用的基础指令数据,由于该目标边缘服务器仅支持针对画面更新服务,而基础指令数据大都需要请求除画面更新服务之外的其他公共服务,因此,该目标边缘服务器在获取到该基础指令数据后,需要将该基础指令数据转发到中心集群中,以请求调用该中心集群中的相关公共服务对该基础指令数据进行响应。在目标边缘服务器将该基础指令数据转发到中心集群时,基于该云处理***中存在的两条不同的通信链路,该目标边缘服务器可将该基础指令数据通过第二通信链路转发到中心集群,以使中心集群通过基础指令服务对该基础指令数据进行响应。其中,在中心集群中部署的任一公共服务可由一个或多个服务组件实现,一个服务组件可以对应一个或多个服务器。
在本申请实施例中,基于云处理***对提供公共服务的中心集群的集中管理,该云处理***中的任一边缘服务器可通过对中心集群中相应服务组件的调用进行公共服务的共享复用,从而可避免对公共组件的重复部署,提升中心集群的资源利用率。由于该云处理***中的边缘服务器与中心集群之间的通信链路分别包括第一通信链路和第二通信链路,那么,如果目标边缘服务器获取到目标云应用的运行数据后,若确定该运行数据为第一类数据,则可通过该第一通信链路将该运行数据发送给中心集群,并在中心集群中通过调用相应的服务对该第一类数据进行响应,而如果目标边缘服务器获取到的运行数据为第二类数据,则该目标边缘服务器可通过与中心集群之间的第二通信链路将该运行数据发送给中心集群,并由中心集群调用相应的服务对该第二类数据进行响应处理,由于目标边缘服务器在对中心集群中提供的公共服务进行调用时,将通过不同的通信链路来实现,也就是说,该目标边缘服务器与中心集群之间的不同业务交互和数据传输是基于不同的通信链路来实现的,也就使得该目标边缘服务器在基于不同业务对中心集群中的公共服务进行调用时,不同业务的数据之间的数据通路是相互独立且互不影响的,从而可实现对不同业务的并发执行,并可提升各业务数据在目标边缘服务器和中心集群之间传输的安全性。
请参见图4,是本申请实施例提出的另一种数据处理方法的示意流程图,同样的,在本申请实施例中提出的数据处理方法也应用在上述的云处理***中,且该云处理***中的多个边缘服务器共享由中心集群提供的多个公共服务,其中,该数据处理方法具体可由用于运行目标云应用的目标边缘服务器执行,该目标边缘服务器是该云处理***中,与目标云应用的客户端之间的物理距离最近的任一个边缘服务器。如图4所示,该方法可包括:
S401,获取目标云应用的运行数据。
该运行数据是由目标边缘服务器获取到的,其中,该运行数据可以是实时性要求较低的,用于对该目标云应用的运行情况进行分析的数据,在一个实施例中,用于对目标云应用的运行情况进行分析的数据包括目标边缘服务器通过应用实例将目标云应用的应用画面下发到相应客户端的过程中获取到的摘要数据,其中,在目标边缘服务器在将应用画面下发到客户端时,是由目标边缘服务器运行该目标云应用的应用实例中包括的传输容器进行下发的,那么,该应用实例中包括的代理容器则可基于该传输容器下发应用画面到客户端的过程,获取得到该目标云应用的摘要数据。在一个实施例中,由于该目标边缘服务器中的应用实例将负责目标云应用的应用画面的传输过程,因此,包括了应用实例的目标边缘服务器也可称为出流节点,那么可以理解,出流节点是与云应用相关的集群中负责运行应用实例的节点,实际包括跑运行容器的服务器,以及负责将编码后的视频流传输给用户的传输容器,其中跑运行容器的服务器例如可以是ARM服务器(一种基于支持移动端应用处理器的服务器),而承载该传输容器的服务器例如可以是x86(一种支持个人电脑端应用的处理器)或ARM服务器。此外,用于对该目标云应用的运行情况进行分析的数据还可以是该目标云应用在目标边缘服务器中运行时产生的日志数据,该目标边缘服务器可在目标云应用的运行过程中获取到该日志数据,或者也可在该目标云应用运行结束后获取到该日志数据。
在一个实施例中,目标边缘服务器承载运行目标云应用可基于如图5a所示的云应用中台部署架构实现的,可以理解,该云应用中台部署架构也即是上述的云处理***的中心集群的具体架构,在如图5a所示的部署架构中,由50标记的节点为出流节点,由51标记的虚线框中的服务为公共服务,且运行公共服务的节点被隔离作为管控节点,管控用于负责管理和控制云应用的应用实例的节点,该类节点用于运行数据库、消息中间件、缓存组件、网关接入组件、用户鉴权组件、出流节点调度组件等云应用的公共组件。基于该部署架构,中心集群可通过各种不同的网关提供网关服务,其中,该中心集群包括的网关可以是用于与业务平台接入的边缘业务网关(Edge gateway,EdgeGW),该业务平台是指管理后台的运行平台,边缘业务网关通过和业务平台连接,并对管理后台提供同一的入口;该边缘业务网关也可称为后台网关,主要用于针对管理后台过来的请求进行安全校验和根据不通的业务进行转发到正确的内部服务上,另外,在该部署架构中还可包括其他网关,如信令网关(signal GW)和流网关(Stream GW),该信令网关和流网关可统称为用户网关,用于和用户集群中出流实例的操作对象进行接入,其中,边缘集群的出流实例对应操作对象的接入可通过边缘服务器的出流实例内部进行接入。在一个实施例中,操作对象在接入到该部署架构时,可先在相应的终端设备中安装相应云应用的软件开发安装包(SDK),以使该操作对象的终端设备具备对相应云应用的应用画面的渲染能力,进而可通过特定的输入输出接口和架构中的用户网关进行接入,从而实现将操作对象接入到部署架构中,其中,该输入输出接口例如可以是CLB/F5接口(一种并发访问接口)。需要说明的是,上述提及的边缘业务网关、信令网关和流网关均分别是独立的网关,也可以是集成在一个网关设备上的不同服务单元。
在一个实施例中,由51标记的虚线框中的公共服务包括的业务层可具体包括:边缘调度服务(Edge Scheduler)、记录存储服务(Recorder)、配置中心(Conf Center)和编码(Transcode)等。其中,边缘调度服务主要用于管理每个出流实例在出流节点上的生命周期(创建,初始化,删除等等),记录存储服务也是录屏服务,用于将音视频流转码录制或对接到直播平台,使得操作对象可在进行云应用时进行直接直播,无需消耗云应用对应终端设备的本地处理能力,配置中心用于提供配置能力,比如出流组件的版本,还有运行时对资源的需求(比如需要占用多少处理资源和内存)等,编码则用于对音视频流进行编码处理等。而在由50标记的出流节点中,任一出流节点均分别包括运行容器,传输容器和代理容器,另外,该出流节点还可包括证书节点(License Node),该证书节点用于创建密钥,并将创建的密钥发送给操作对象,而公共服务的证书中心(License Center)则用于对证书节点发送给操作对象的密钥进行安全性校验,其中,该密钥用于提供安全认证能力,出流实例在创建之初会生成若干秘钥,这些秘钥后续会分配给操作对象,操作对象基于密钥向网关请求建立连接的时候,网关会将该密钥传给认证服务进行认证。
此外,在该部署架构中的公共服务还包括存储服务,用于提供基础的存储功能,该存储服务可由各种存储器来实现,如分布式存储器(kafka),关系型数据库(MySQL)、基于远程字典服务的存储器(Redis)、基于注册表的存储器(Registry)及文件存储器(Filesever)。另外,该公共服务还包括配额管理服务(Quota),数据预处理服务(PreProcess),监控(Monitor)服务,数据(Statistics)服务。其中,配额管理服务主要用于统一计算集群当前对资源的使用情况,比如每个实例创建的时候,需要分配的CPU/内存/GPU资源数,因此,该配额管理服务用于对所需的资源数进行统一的计算和分配;数据预处理服务是由于数据处理数据量非常大,传统的流式处理难以满足性能需求,可采用数据预处理服务将每个实例产生的数据先经过预处理服务处理,再将汇总数据放到流式处理流程中进行分析和报表展示(即后续推送到数据中台和运维监控平台进行分析和展示);监控服务用于对云应用***各项健康指标的实时监控;数据服务是云应用实例状态汇总的服务,用于给monitor提供业务监控的基础数据。
基于上述的针对云应用的中台部署架构,可将图5a中51标记的公共服务集中部署在中心集群,并通过在边缘集群中部署边缘服务器,以实现对中心集群中公共服务的共享复用,其中,边缘集群中的边缘服务器可分别通过两条不同的通信链路实现对中心集群提供的两种不同的公共服务进行共享复用,在一个实施例中,中心集群包括中心代理设备和边缘管理设备,该目标边缘服务器与边缘代理设备相关联;那么,如果对第一类数据进行数据传输的实时性要求低于对第二类数据进行传输的实时性要求,则该边缘代理设备与中心集群包括的中心代理设备之间的通信链路为第一通信链路;而目标边缘服务器与边缘管理设备之间的通信链路为第二通信链路,那么,目标边缘服务器则可基于业务需求分别基于第一通信链路和第二通信链路对中心集群中的公共服务进行调用。在一个实施例中,目标边缘服务器可将获取到的目标云应用的第一类数据通过第一通信链路发送给中心集群,并调用中心集群中的相应服务对该第一类数据进行响应,即转而执行步骤S402,而在目标边缘服务器获取到的是第二类数据时,则将通过第二通信链路将该第二类数据发送给中心集群,以调用中心集群的相应服务对该第二类数据进行响应,即转而执行步骤S403。
S402,当运行数据为第一类数据时,将运行数据通过目标边缘服务器与中心集群之间的第一通信链路发送给中心集群,以使中心集群采用与第一类数据匹配的服务对第一类数据进行响应;第一通信链路是与第一类数据的实时性要求相匹配的链路。
S403,当运行数据为第二类数据时,将运行数据通过第二通信链路发送给中心集群,以使中心集群采用与第二类数据匹配的服务对第二类数据进行响应,其中,第二通信链路是与第二类数据的实时性要求相匹配的链路,且第一类数据和第二类数据的实时性要求不同。
在步骤S402和步骤S403中,由于目标边缘服务器包括运行容器、传输容器及代理容器,目标云应用运行在目标边缘服务器的运行容器中,传输容器用于分别与客户端及运行容器建立连接,以将运行容器编码后的应用画面发送给客户端进行显示,而代理容器用于为传输容器和运行容器建立通信连接,并与中心集群中的边缘管理设备建立通信连接,因此,第二通信链路是指代理容器和边缘管理设备建立通信连接后的通信链路。在一个实施例中,基于上述的部署架构,将公共服务集中在中心集群进行部署,并部署多个对中心集群中的公共服务进行共享复用的边缘集群的示意图可如图5b所示,其中,该中心集群包括的中心代理设备为kafka proxy(一种分布式的日志代理),边缘管理设备为Edge manager(一种无状态的管理节点),而在目标边缘服务器关联的边缘代理设备则为kafka logproxy(一种分布式的日志代理,该日志代理和中心代理设备可以相同或不同),那么可以理解,该目标边缘服务器与中心集群之间的第一通信链路(或称为数据链路(Data channel))即是由中心代理设备和边缘代理设备之间的数据通信构成,而目标边缘服务器与中心集群之间的第二通信链路则是由边缘管理设备和该目标边缘服务器之间的数据通信构成的。
在一个实施例中,该边缘管理设备也可称为EC Manager(一种无状态的边缘管理设备),主要负责边缘服务器和中心集群之间的第二通信链路的打通,并用于部署对边缘服务器进行管理的服务,由于针对边缘服务器的管理服务是无状态的服务,其中,无状态的服务是指在中心集群中部署的多个管理服务之间,每个管理服务没有区别,如果其中一个管理服务崩溃,另一管理服务可替代崩溃的管理服务执行,从而可保证第二通信链路的稳定性。也就是说,本申请实施例通过在中心集群中部署边缘管理设备,从而可通过该边缘管理设备代理中心集群内的公共组件和目标边缘服务器的出流实例之间的通信流量。其中,该边缘管理设备是通过与出流实例的代理容器建立双向TLS加密(一种安全传输协议)的WebSocket连接(长连接)来实现通信的。那么可以理解,如果目标边缘服务器获取的运行数据是由目标边缘服务器的代理容器获取到的,那么获取的运行数据则为第二类数据;而在目标边缘服务器将第二类数据通过目标边缘服务器与中心集群之间的第二通信链路发送给中心集群时,即是通过代理容器与中心集群中的边缘管理设备之间的通信连接,将该第二类数据发送给中心集群中的边缘管理设备,从而实现将该第二类数据发送到中心集群中。
在一个实施例中,由于第一类数据包括用于记录应用实例在将应用画面输出到客户端过程中的摘要数据,由此可见,第一通信链路中承载的数据量较大,如在目标云应用当前的日活跃用户数(Daily Active User,DAU)为50万时,通过第一通信链路发送的数据数量级达百亿级别,但第一类数据的实时性要求较低,也就是说,目标边缘服务器可通过第一通信链路进行实时性要求低,但数据量较大的运行数据的传输。如图5b所示的第一通信链路,边缘代理设备包括kafka log proxy,该边缘代理设备在获取到出流实例(即关联的目标边缘服务器)发送的第一类数据(如上述的摘要数据)后,可先将第一类数据落地到本地磁盘中,再通过公网将第一类数据发送到位于中心集群的中心代理设备(kafka proxy)中,因此,如果边缘代理设备的网络出现抖动而断网,第一通信链路将会出现短暂的中断,在该边缘代理设备会持续重连并等待网络重新连接之后,则可通过本地磁盘中存储的第一类数据,将第一类数据进行重新发送,且如果由于设备或服务升级或其他问题导致的边缘代理设备重新的问题,第一类数据也可从本地磁盘中进行重新加载和续传,以确保第一类数据不被丢失。
在一个实施例中,边缘代理设备和中心代理设备之间采用TCP建立通信连接,并在中心代理设备前部署有负载均衡(Cloud Load Balancer,CLB)设备和防火墙,以对产生该日志数据的设备的源IP进行显示,确定第一通信链路的数据安全性。在一个实施例中,负载均衡能提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台云服务器上,扩展***的服务能力并消除单点故障,且负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。另外,中心集群中还可通过消息中间件(MQ)提供消息发送和接收服务,消息中间件是面向消息的***,在分布式***中完成消息的发送和接收的基础软件,消息中间件也可以称消息队列,是指用高效可靠的消息传递机制进行与平台无关的数据交流,并基于数据通信来进行分布式***的集成,通过提供消息传递和消息队列模型,可以在分布式环境下扩展进程的通信。而Psrxy Server(一种部署在中心集群的网络代理)和Psrxy Client(一种部署在边缘服务器的网络代理)作为在打通k8s(一种资源平台)的中心集群和边缘点的代理网络通路,让k8s在管理边缘点的时候可以无需关注该边缘点的网络情况(不管公网还是私网)。其中,k8s也称为Kubernetes,其是一个可移植的、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化,Kubernetes拥有一个庞大且快速增长的生态***,Kubernetes的服务、支持和工具广泛可用。
在一个实施例中,边缘代理设备中部署有目标资源(DeamonSet),目标资源用于为边缘代理设备关联特定标签,在一个实施例中,该特定标签例如可以是tencent.cr/ec-role:ec-kafka-proxy,那么,当物理边缘区域中的其他设备被添加特定标签后,被添加特定标签的其他设备被作为边缘代理设备,那么基于在边缘代理设备中部署的目标资源,使得边缘集群中的kafka log proxy组件会自动部署到被部署了目标资源的边缘代理设备中,且与该边缘代理设备关联的边缘服务器也将自动准备好接受位于中心集群的调度服务,从而实现对边缘点(包括边缘服务器和关联的边缘代理设备)的搭建和维护的简化,使边缘点能被自动发现并接入中心集群。
下面,结合图5c,并以目标边缘服务器和关联的边缘代理设备构成目标边缘点为例,对目标边缘点的自动发现流程进行说明。在一个实施例中,上述提及的第一通信链路和第二通信链路均是在目标边缘点被标记为可用状态后建立的,而目标边缘点是被边缘管理设备标记为可用状态的,那么,该边缘管理设备在将目标边缘点标记为可用状态时,可先由边缘管理设备获取目标边缘点的边缘代理设备的资源对象创建信息,并在边缘管理设备根据资源对象创建信息确定边缘代理设备创建了资源对象(pod)后,获取边缘代理设备的设备标识及边缘代理设备所在物理边缘区域的区域(zone)标识;在一个实施例中,该边缘代理设备创建的资源对象pod为一个或多个容器集合,进而该边缘管理设备则可在中心集群关联存储设备标识和区域标识后,将目标边缘点标记为可用状态。其中,边缘代理设备的网络类型为宿主机网络类型(即为Host Network),被配置为宿主机网络类型的边缘代理设备的设备标识(即节点IP,Node IP),与在被配置为宿主机网络类型的边缘代理设备中创建的资源对象的对象标识一致;那么,该边缘管理设备在获取边缘代理设备的设备标识时,则可获取在边缘代理设备中创建的资源对象的对象标识(即为pod IP),并将获取的对象标识作为边缘代理设备的设备标识,那么,在边缘管理设备获取到的区域标识也即是相应的边缘服务器所支持的客户端对应终端设备的物理区域(或物理边缘区域)范围,那么,在边缘管理设备将设备标识和区域标识进行关联存储后,即完成了新增边缘点(如上述的目标边缘点)的发现过程。
在一个实施例中,目标边缘点也是由边缘管理设备删除的,那么,边缘管理设备可在边缘管理设备获取到针对目标边缘点的删除触发指令时,停止运行边缘代理设备,并删除在中心集群中关联存储的设备标识和区域标识,而在设备标识和区域标识被删除后,目标边缘点为不可用状态。在一个实施例中,目标云应用被运行在不同边缘点包括的边缘服务器中,一个边缘点对应一个物理边缘区域;任一边缘点的边缘服务器根据相应物理边缘区域的区域标识,将目标云应用的应用画面输出显示到处于物理边缘区域内的客户端中。
S404,通过第二通信链路从中心集群获取响应第二类数据后生成的反馈数据。
S405,采用反馈数据更新应用画面,并在目标云应用的客户端中显示更新后的应用画面。
在步骤S404和步骤S405中,中心集群提供的多种服务至少包括运行分析服务和基础指令服务,第一类数据为支持对目标云应用的运行情况进行分析的数据,第二类数据则为针对目标云应用的基础指令数据,那么当第一类数据为支持对目标云应用的运行情况进行分析的数据时,与第一类数据匹配的服务为运行分析服务;当第二类数据为基础指令数据时,与第二类数据匹配的服务为基础指令服务。在目标边缘服务器将第一类数据通过第一通信链路发送给中心集群,并在中心集群通过运行分析服务对目标云应用的运行情况进行分析后,该目标边缘服务器同样可通过该第一通信链路获取到针对该目标云应用的分析结果,并将获取到的分析结果输出显示到质量监管设备中,或者,针对该目标云应用的质量监管设备也可直接接入到中心集群,并从该中心集群中获取针对该目标云应用的分析结果。在一个实施例中,目标边缘服务器通过第二通信链路向中心集群发送的实时性要求较高的第二类数据,是该目标边缘服务器通过在客户端显示目标云应用的应用画面后获取到的,那么在目标边缘服务器通过第二通信链路将第二类数据发送给中心集群,并在中心集群通过基础指令服务对该第二类数据进行响应后,该目标边缘服务器将通过第二通信链路从中心集群获取响应该第二类数据后生成的反馈数据,在具体实现中,该目标边缘服务器可通过目标边缘服务器中的代理容器从中心集群的边缘管理设备中获取反馈数据。
在目标边缘服务器获取到针对该第二类数据的反馈数据后,则可采用反馈数据更新应用画面,并在客户端中显示更新后的应用画面,在一个实施例中,该目标边缘服务器可将反馈数据发送给目标边缘服务器中的运行容器,以在运行容器中采用反馈数据更新应用画面,那么,更新后的应用画面在运行容器中被编码后,通过目标边缘服务器中的传输容器发送到客户端,并在客户端显示更新后的应用画面。也就是说,云处理***中的中心集群和边缘点(包括边缘服务器和关联的边缘代理设备)在部署时,中心集群中的公共服务可集中管理,如可集中部署在互联网数据中心(Internet Data Center,IDC)中,边缘点则可选择部署在物理位置与操作对象较近区域的机房,比如在华南地区的中心集群可部署在深圳的互联网数据中心,而边缘点则可分别在惠州和东莞进行部署,以专门针对惠州和东莞的用户提供更加优质和流程的云应用接入体验。可以理解,边缘点在部署时要尽量轻量,边缘点内仅包括支持出流实例运行的出流节点,其他服务将附属于中心集群而存在,减轻边缘点的搭建和维护成本,而在中心集群中同样将部署出流节点,以使该中心集群覆盖的操作对象通过中心集群进行云应用的接入。
在一个实施例中,目标云应用包括目标云游戏,目标云应用的客户端包括目标云游戏对应的游戏客户端;支持对目标云应用的运行情况进行分析的第一类数据包括目标云游戏的日志数据,针对目标云应用的基础指令数据包括游戏基础指令,游戏基础指令包括以下任意一种或多种:存储指令和鉴权指令等。下面结合图5d对目标云游戏的运行过程进行说明。其中,该云游戏是基于云游戏处理***(即上述的云处理***)运行的,该云游戏处理***包含中心集群和多个边缘服务器,该多个边缘服务器共享由该中心集群提供的质量分析服务和游戏基础服务,该目标云游戏将基于与各边缘服务器之间的距离,接入相应距离最近的边缘服务器作为目标边缘服务器,该目标边缘服务器则可通过目标云游戏的游戏实例包括的传输容器与该游戏客户端建立连接,并触发在游戏容器中运行该目标云游戏。在游戏容器中运行目标游戏过程中,该游戏容器将通过传输容器持续发送音视频流到游戏客户端中,并在该游戏客户端中显示相应的游戏画面,此外,在传输容器向游戏客户端中发送音视频流所产生的摘要数据(或运行该云游戏所产生的日志数据)将由目标边缘服务器采集到后,通过该目标边缘服务器关联的边缘代理设备与中心集群中的中心代理设备发送到中心集群中,以对该目标云游戏的运行过程进行质量分析。
在目标边缘服务器的游戏容器运行该目标云游戏时,游戏操作用户可通过游戏客户端所在的终端设备发送游戏基础指令,该游戏基础指令则可通过该目标边缘服务器与中心集群中边缘管理设备之间的长连接,将该游戏基础指令发送到中心集群中,并可从该边缘管理设备中获取针对该游戏基础指令的反馈数据,该反馈数据可在游戏容器中对当前显示的游戏画面进行更新后,由游戏容器通过传输容器将更新后的游戏画面下发到游戏客户端进行显示。此外,该目标云游戏处理***还包括游戏虚拟手柄接入网关(GamePad GW)。其中,该游戏虚拟手柄是为了解决没有实体手柄的时候,游戏操作对象可将终端设备作为接入手柄的实体载体,并通过在终端屏幕上生成一个触屏版的游戏手柄,另外,该中心集群还可提供直播接入的接口,以使在云游戏过程中直接基于中心集群继而到直播平台进行游戏直播。
在本发明实施例中,目标云应用可在云处理***中运行时,由与该目标云应用对应客户端最近的目标边缘服务器的运行容器执行运行,且该目标边缘服务器是与多个其他边缘服务器共享由中心集群提供的多种服务,从而可保证边缘服务器的轻量部署,并基于对中心集群中各服务的共享复用,可提升中心集群中的资源利用率。而在目标边缘服务器获取到针对目标云应用的运行数据后,在该运行数据为第一类数据时,将该第一类数据通过第一通信链路发送给中心集群进行响应,并该运行数据为第二类数据时,将该第二类数据通过第二通信链路发送给中心集群进行响应,而后则可通过该相应的通信链路获取针对该运行数据的反馈数据,由于云处理***中的边缘点在部署时,可实现边缘点的自动发现,因此,也就可提升边缘点的部署进度和边缘点发现效率,而基于将数据传输通道的分离,则可有效提升云应用的数据安全性,以及提升云应用的操作流畅度。
基于上述数据处理方法实施例的描述,本发明实施例还提出了一种数据处理装置,应用于云处理***,所述云处理***包含中心集群和多个边缘服务器,所述多个边缘服务器共享由所述中心集群提供的多种服务,所述数据处理装置可以是运行于上述目标边缘服务器中的一个计算机程序(包括程序代码),所述目标边缘服务器包括所述多个边缘服务器中,与目标云应用的客户端之间的物理距离最近的任一个边缘服务器。该数据处理装置可用于执行如图2和图4所述的数据处理方法,请参见图6,该数据处理装置包括:获取单元601和发送单元602。
获取单元601,用于获取目标云应用的运行数据;
发送单元602,用于当所述运行数据为第一类数据时,将所述运行数据通过所述目标边缘服务器与所述中心集群之间的第一通信链路发送给所述中心集群,以使所述中心集群采用与所述第一类数据匹配的服务对所述第一类数据进行响应;所述第一通信链路是与所述第一类数据的实时性要求相匹配的链路;
所述发送单元602,还用于当所述运行数据为第二类数据时,将所述运行数据通过第二通信链路发送给所述中心集群,以使所述中心集群采用与所述第二类数据匹配的服务对所述第二类数据进行响应,其中,所述第二通信链路是与所述第二类数据的实时性要求相匹配的链路,且所述第一类数据和所述第二类数据的实时性要求不同。
在一个实施例中,所述中心集群包括中心代理设备和边缘管理设备,所述目标边缘服务器与边缘代理设备相关联;
若所述第一类数据的实时性要求低于所述第二类数据的实时性要求,所述边缘代理设备与所述中心代理设备之间的通信链路为所述第一通信链路;
所述目标边缘服务器与所述边缘管理设备之间的通信链路为所述第二通信链路。
在一个实施例中,所述目标边缘服务器包括运行容器、传输容器及代理容器;
所述目标云应用运行在所述目标边缘服务器的运行容器中,所述传输容器用于分别与所述客户端及所述运行容器建立连接,以对所述运行容器生成的所述目标云应用的应用画面进行编码,并将编码后的应用画面发送给所述客户端进行显示;
所述代理容器用于为所述传输容器和所述运行容器建立通信连接,并与所述中心集群中的边缘管理设备建立通信连接,其中,所述第二通信链路是指代理容器和所述边缘管理设备建立通信连接后的通信链路。
在一个实施例中,若所述运行数据是由所述目标边缘服务器的代理容器获取到的,所述运行数据为所述第二类数据;所述发送单元602,具体用于:
当所述运行数据为第二类数据时,将所述运行数据通过所述代理容器与所述中心集群中的边缘管理设备之间的通信连接,发送给所述中心集群中的边缘管理设备。
在一个实施例中,所述中心集群提供的多种服务至少包括运行分析服务和基础指令服务,所述第一类数据为支持对所述目标云应用的运行情况进行分析的数据,所述第二类数据则为针对所述目标云应用的基础指令数据;
其中,当所述第一类数据为支持对所述目标云应用的运行情况进行分析的数据时,与所述第一类数据匹配的服务为所述运行分析服务;当所述第二类数据为所述基础指令数据时,与所述第二类数据匹配的服务为所述基础指令服务。
在一个实施例中,所述基础指令数据是通过在所述目标云应用的客户端显示所述目标云应用的应用画面后获取到的;所述装置还包括处理单元603。
所述获取单元601,还用于通过所述第二通信链路从所述中心集群获取响应所述第二类数据后生成的反馈数据;
处理单元603,用于采用所述反馈数据更新所述应用画面,并在所述目标云应用的客户端中显示更新后的应用画面。
在一个实施例中,所述获取单元601,具体用于:通过所述目标边缘服务器中的代理容器从所述中心集群的边缘管理设备中获取所述反馈数据;
所述处理单元603,具体用于:将所述反馈数据发送给所述目标边缘服务器中的运行容器,以在所述运行容器中采用所述反馈数据更新所述应用画面;更新后的应用画面在所述运行容器中被编码后,通过所述目标边缘服务器中的传输容器发送到所述目标云应用的客户端,并在所述目标云应用的客户端显示所述更新后的应用画面。
在一个实施例中,所述目标云应用包括目标云游戏,所述目标云应用的客户端包括所述目标云游戏对应的游戏客户端;
支持对所述目标云应用的运行情况进行分析的第一类数据包括所述目标云游戏的日志数据,针对所述目标云应用的基础指令数据包括游戏基础指令,所述游戏基础指令包括以下至少一种:存储指令和鉴权指令。
在一个实施例中,所述目标边缘服务器和关联的边缘代理设备构成目标边缘点,所述第一通信链路和所述第二通信链路均是在所述目标边缘点被标记为可用状态后建立的;所述目标边缘点是被边缘管理设备标记为可用状态的,所述边缘管理设备将所述目标边缘点标记为可用状态的方式时,
由所述边缘管理设备获取所述目标边缘点关联的边缘代理设备的资源对象创建信息,并在所述边缘管理设备根据所述资源对象创建信息确定所述边缘代理设备创建了资源对象后,获取所述边缘代理设备的设备标识及所述边缘代理设备所在物理边缘区域的区域标识;
在所述中心集群关联存储所述设备标识和所述区域标识后,将所述目标边缘点标记为可用状态。
在一个实施例中,所述边缘代理设备的网络类型为宿主机网络类型,被配置为所述宿主机网络类型的边缘代理设备的设备标识,与在被配置为所述宿主机网络类型的边缘代理设备中创建的资源对象的对象标识一致;所述获取所述边缘代理设备的设备标识时,
获取在所述边缘代理设备中创建的资源对象的对象标识,并将获取的对象标识作为所述边缘代理设备的设备标识。
在一个实施例中,所述边缘代理设备中部署有目标资源,所述目标资源用于为所述边缘代理设备关联特定标签;
当所述物理边缘区域中的其他设备被添加所述特定标签后,被添加所述特定标签的其他设备被作为所述边缘代理设备。
在一个实施例中,所述目标边缘点也是由所述边缘管理设备删除的,由所述边缘管理设备删除所述目标边缘点的方式为,
当所述边缘管理设备获取到针对所述目标边缘点的删除触发指令时,停止运行所述边缘代理设备,并删除在所述中心集群中关联存储的所述设备标识和所述区域标识;
在所述设备标识和所述区域标识被删除后,所述目标边缘点为不可用状态。
在一个实施例中,所述目标云应用被运行在不同边缘点包括的边缘服务器中,一个边缘点对应一个物理边缘区域;
任一边缘点的边缘服务器根据相应物理边缘区域的区域标识,将所述目标云应用的应用画面输出显示到处于所述物理边缘区域内的客户端中。
在本申请实施例中,基于云处理***对提供公共服务的中心集群的集中管理,该云处理***中的任一边缘服务器可通过对中心集群中相应服务组件的调用进行公共服务的共享复用,从而可避免对公共组件的重复部署,提升中心集群的资源利用率。由于该云处理***中的边缘服务器与中心集群之间的通信链路分别包括第一通信链路和第二通信链路,那么,如果获取单元601获取到目标云应用的运行数据后,发送单元602可在确定该运行数据为第一类数据时,通过该第一通信链路将该运行数据发送给中心集群,并在中心集群中通过调用相应的服务对该第一类数据进行响应,而如果获取单元601获取到针对该目标云应用的运行数据为第二类数据,则发送单元602可将该第二类数据通过与中心集群之间的第二通信链路发送给中心集群,并由中心集群调用相应的服务进行响应,由于在对中心集群中提供的公共服务进行调用时,将通过不同的通信链路来实现,也就是说,与中心集群之间的不同业务交互和数据传输是基于不同的通信链路来实现的,也就在基于不同业务对中心集群中的公共服务进行调用时,不同业务的数据之间的数据通路是相互独立且互不影响的,从而可实现对不同业务的并发执行,并可提升各业务数据传输的安全性。
请参见图7,是本发明实施例提供的一种边缘服务器(如上述的目标边缘服务器)的结构示意性框图。其中,目标边缘服务器与其他多个边缘服务器共享由数据处理系包含的中心集群提供的多种服务,该目标边缘服务器为与目标云应用的客户端之间的物理距离最近的任一个边缘服务器,如图7所示的本实施例中的边缘服务器可包括:一个或多个处理器701;一个或多个输入设备702,一个或多个输出设备703和存储器704。上述处理器701、输入设备702、输出设备703和存储器704通过总线705连接。存储器704用于存储计算机程序,所述计算机程序包括程序指令,处理器701 用于执行所述存储器704存储的程序指令。
所述存储器704可以包括易失性存储器(volatile memory),如随机存取存储器(random-access memory,RAM);存储器704也可以包括非易失性存储器(non-volatilememory),如快闪存储器(flash memory),固态硬盘(solid-state drive,SSD)等;存储器704还可以包括上述种类的存储器的组合。
所述处理器701可以是中央处理器(central processing unit,CPU)。所述处理器701还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmable logic device,PLD)等。该PLD可以是现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)等。所述处理器701也可以为上述结构的组合。
本发明实施例中,所述存储器704用于存储计算机程序,所述计算机程序包括程序指令,处理器701用于执行存储器704存储的程序指令,用来实现上述如图2和图4中相应方法的步骤。
在一个实施例中,所述处理器701被配置调用所述程序指令,用于执行:
获取目标云应用的运行数据;
当所述运行数据为第一类数据时,将所述运行数据通过所述目标边缘服务器与所述中心集群之间的第一通信链路发送给所述中心集群,以使所述中心集群采用与所述第一类数据匹配的服务对所述第一类数据进行响应;所述第一通信链路是与所述第一类数据的实时性要求相匹配的链路;
当所述运行数据为第二类数据时,将所述运行数据通过第二通信链路发送给所述中心集群,以使所述中心集群采用与所述第二类数据匹配的服务对所述第二类数据进行响应,其中,所述第二通信链路是与所述第二类数据的实时性要求相匹配的链路,且所述第一类数据和所述第二类数据的实时性要求不同。
在一个实施例中,所述中心集群包括中心代理设备和边缘管理设备,所述目标边缘服务器与边缘代理设备相关联;
若所述第一类数据的实时性要求低于所述第二类数据的实时性要求,所述边缘代理设备与所述中心代理设备之间的通信链路为所述第一通信链路;
所述目标边缘服务器与所述边缘管理设备之间的通信链路为所述第二通信链路。
在一个实施例中,所述目标边缘服务器包括运行容器、传输容器及代理容器;
所述目标云应用运行在所述目标边缘服务器的运行容器中,所述传输容器用于分别与所述客户端及所述运行容器建立连接,以对所述运行容器生成的所述目标云应用的应用画面进行编码,并将编码后的应用画面发送给所述客户端进行显示;
所述代理容器用于为所述传输容器和所述运行容器建立通信连接,并与所述中心集群中的边缘管理设备建立通信连接,其中,所述第二通信链路是指代理容器和所述边缘管理设备建立通信连接后的通信链路。
在一个实施例中,若所述运行数据是由所述目标边缘服务器的代理容器获取到的,所述运行数据为所述第二类数据;所述处理器701被配置调用所述程序指令,用于执行:
当所述运行数据为第二类数据时,将所述运行数据通过所述代理容器与所述中心集群中的边缘管理设备之间的通信连接,发送给所述中心集群中的边缘管理设备。
在一个实施例中,所述中心集群提供的多种服务至少包括运行分析服务和基础指令服务,所述第一类数据为支持对所述目标云应用的运行情况进行分析的数据,所述第二类数据则为针对所述目标云应用的基础指令数据;
其中,当所述第一类数据为支持对所述目标云应用的运行情况进行分析的数据时,与所述第一类数据匹配的服务为所述运行分析服务;当所述第二类数据为所述基础指令数据时,与所述第二类数据匹配的服务为所述基础指令服务。
在一个实施例中,所述基础指令数据是通过在所述目标云应用的客户端显示所述目标云应用的应用画面后获取到的;所述处理器701被配置调用所述程序指令,用于执行:
通过所述第二通信链路从所述中心集群获取响应所述第二类数据后生成的反馈数据;
采用所述反馈数据更新所述应用画面,并在所述目标云应用的客户端中显示更新后的应用画面。
在一个实施例中,所述处理器701被配置调用所述程序指令,用于执行:通过所述目标边缘服务器中的代理容器从所述中心集群的边缘管理设备中获取所述反馈数据;
所述处理器701被配置调用所述程序指令,用于执行:将所述反馈数据发送给所述目标边缘服务器中的运行容器,以在所述运行容器中采用所述反馈数据更新所述应用画面;更新后的应用画面在所述运行容器中被编码后,通过所述目标边缘服务器中的传输容器发送到所述目标云应用的客户端,并在所述目标云应用的客户端显示所述更新后的应用画面。
在一个实施例中,所述目标云应用包括目标云游戏,所述目标云应用的客户端包括所述目标云游戏对应的游戏客户端;
支持对所述目标云应用的运行情况进行分析的第一类数据包括所述目标云游戏的日志数据,针对所述目标云应用的基础指令数据包括游戏基础指令,所述游戏基础指令包括以下至少一种:存储指令和鉴权指令。
在一个实施例中,所述目标边缘服务器和关联的边缘代理设备构成目标边缘点,所述第一通信链路和所述第二通信链路均是在所述目标边缘点被标记为可用状态后建立的;所述目标边缘点是被边缘管理设备标记为可用状态的,所述处理器701被配置调用所述程序指令,用于执行:
由所述边缘管理设备获取所述目标边缘点关联的边缘代理设备的资源对象创建信息,并在所述边缘管理设备根据所述资源对象创建信息确定所述边缘代理设备创建了资源对象后,获取所述边缘代理设备的设备标识及所述边缘代理设备所在物理边缘区域的区域标识;
在所述中心集群关联存储所述设备标识和所述区域标识后,将所述目标边缘点标记为可用状态。
在一个实施例中,所述边缘代理设备的网络类型为宿主机网络类型,被配置为所述宿主机网络类型的边缘代理设备的设备标识,与在被配置为所述宿主机网络类型的边缘代理设备中创建的资源对象的对象标识一致;所述处理器701被配置调用所述程序指令,用于执行:
获取在所述边缘代理设备中创建的资源对象的对象标识,并将获取的对象标识作为所述边缘代理设备的设备标识。
在一个实施例中,所述边缘代理设备中部署有目标资源,所述目标资源用于为所述边缘代理设备关联特定标签;
当所述物理边缘区域中的其他设备被添加所述特定标签后,被添加所述特定标签的其他设备被作为所述边缘代理设备。
在一个实施例中,所述目标边缘点也是由所述边缘管理设备删除的,所述处理器701被配置调用所述程序指令,用于执行:
当所述边缘管理设备获取到针对所述目标边缘点的删除触发指令时,停止运行所述边缘代理设备,并删除在所述中心集群中关联存储的所述设备标识和所述区域标识;
在所述设备标识和所述区域标识被删除后,所述目标边缘点为不可用状态。
在一个实施例中,所述目标云应用被运行在不同边缘点包括的边缘服务器中,一个边缘点对应一个物理边缘区域;
任一边缘点的边缘服务器根据相应物理边缘区域的区域标识,将所述目标云应用的应用画面输出显示到处于所述物理边缘区域内的客户端中。
本发明实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述如图2或图4所示的方法实施例。其中,所述的计算机可读存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明的局部实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或局部流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。
Claims (16)
1.一种数据处理方法,其特征在于,应用于云处理***,所述云处理***包含中心集群和多个边缘服务器,所述多个边缘服务器共享由所述中心集群提供的多种服务,所述方法由目标边缘服务器执行,所述目标边缘服务器包括所述多个边缘服务器中,与目标云应用的客户端之间的物理距离最近的任一个边缘服务器,所述方法包括:
获取目标云应用的运行数据;
当所述运行数据为第一类数据时,将所述运行数据通过所述目标边缘服务器与所述中心集群之间的第一通信链路发送给所述中心集群,以使所述中心集群采用与所述第一类数据匹配的服务对所述第一类数据进行响应;所述第一通信链路是与所述第一类数据的实时性要求相匹配的链路;
当所述运行数据为第二类数据时,将所述运行数据通过第二通信链路发送给所述中心集群,以使所述中心集群采用与所述第二类数据匹配的服务对所述第二类数据进行响应,其中,所述第二通信链路是与所述第二类数据的实时性要求相匹配的链路,且所述第一类数据和所述第二类数据的实时性要求不同;所述目标边缘服务器和关联的边缘代理设备构成目标边缘点,所述第一通信链路和所述第二通信链路均是在所述目标边缘点被标记为可用状态后建立的,所述目标边缘点是被边缘管理设备标记为可用状态的,所述边缘管理设备将所述目标边缘点标记为可用状态的方式包括:
由所述边缘管理设备获取所述目标边缘点关联的边缘代理设备的资源对象创建信息,并在所述边缘管理设备根据所述资源对象创建信息确定所述边缘代理设备创建了资源对象后,获取所述边缘代理设备的设备标识及所述边缘代理设备所在物理边缘区域的区域标识;在所述中心集群关联存储所述设备标识和所述区域标识后,将所述目标边缘点标记为可用状态。
2.如权利要求1所述的方法,其特征在于,所述中心集群包括中心代理设备和边缘管理设备,所述目标边缘服务器与边缘代理设备相关联;
若所述第一类数据的实时性要求低于所述第二类数据的实时性要求,所述边缘代理设备与所述中心代理设备之间的通信链路为所述第一通信链路;
所述目标边缘服务器与所述边缘管理设备之间的通信链路为所述第二通信链路。
3.如权利要求1所述的方法,其特征在于,所述目标边缘服务器包括运行容器、传输容器及代理容器;
所述目标云应用运行在所述目标边缘服务器的运行容器中,所述传输容器用于分别与所述客户端及所述运行容器建立连接,以对所述运行容器生成的所述目标云应用的应用画面进行编码,并将编码后的应用画面发送给所述客户端进行显示;
所述代理容器用于为所述传输容器和所述运行容器建立通信连接,并与所述中心集群中的边缘管理设备建立通信连接,其中,所述第二通信链路是指代理容器和所述边缘管理设备建立通信连接后的通信链路。
4.如权利要求3所述的方法,其特征在于,若所述运行数据是由所述目标边缘服务器的代理容器获取到的,所述运行数据为所述第二类数据;所述当所述运行数据为第二类数据时,将所述运行数据通过第二通信链路发送给所述中心集群,包括:
当所述运行数据为第二类数据时,将所述运行数据通过所述代理容器与所述中心集群中的边缘管理设备之间的通信连接,发送给所述中心集群中的边缘管理设备。
5.如权利要求1所述的方法,其特征在于,所述中心集群提供的多种服务至少包括运行分析服务和基础指令服务,所述第一类数据为支持对所述目标云应用的运行情况进行分析的数据,所述第二类数据则为针对所述目标云应用的基础指令数据;
其中,当所述第一类数据为支持对所述目标云应用的运行情况进行分析的数据时,与所述第一类数据匹配的服务为所述运行分析服务;当所述第二类数据为所述基础指令数据时,与所述第二类数据匹配的服务为所述基础指令服务。
6.如权利要求5所述的方法,其特征在于,所述基础指令数据是通过在所述目标云应用的客户端显示所述目标云应用的应用画面后获取到的;所述方法还包括:
通过所述第二通信链路从所述中心集群获取响应所述第二类数据后生成的反馈数据;
采用所述反馈数据更新所述应用画面,并在所述目标云应用的客户端中显示更新后的应用画面。
7.如权利要求6所述的方法,其特征在于,所述通过所述第二通信链路从所述中心集群获取响应所述第二类数据后生成的反馈数据,包括:通过所述目标边缘服务器中的代理容器从所述中心集群的边缘管理设备中获取所述反馈数据;
所述采用所述反馈数据更新所述应用画面,并在所述目标云应用的客户端中显示更新后的应用画面,包括:将所述反馈数据发送给所述目标边缘服务器中的运行容器,以在所述运行容器中采用所述反馈数据更新所述应用画面;更新后的应用画面在所述运行容器中被编码后,通过所述目标边缘服务器中的传输容器发送到所述目标云应用的客户端,并在所述目标云应用的客户端显示所述更新后的应用画面。
8.如权利要求5所述的方法,其特征在于,所述目标云应用包括目标云游戏,所述目标云应用的客户端包括所述目标云游戏对应的游戏客户端;
支持对所述目标云应用的运行情况进行分析的第一类数据包括所述目标云游戏的日志数据,针对所述目标云应用的基础指令数据包括游戏基础指令,所述游戏基础指令包括以下至少一种:存储指令和鉴权指令。
9.如权利要求1所述的方法,其特征在于,所述边缘代理设备的网络类型为宿主机网络类型,被配置为所述宿主机网络类型的边缘代理设备的设备标识,与在被配置为所述宿主机网络类型的边缘代理设备中创建的资源对象的对象标识一致;所述获取所述边缘代理设备的设备标识,包括:
获取在所述边缘代理设备中创建的资源对象的对象标识,并将获取的对象标识作为所述边缘代理设备的设备标识。
10.如权利要求1所述的方法,其特征在于,所述边缘代理设备中部署有目标资源,所述目标资源用于为所述边缘代理设备关联特定标签;
当所述物理边缘区域中的其他设备被添加所述特定标签后,被添加所述特定标签的其他设备被作为所述边缘代理设备。
11.如权利要求1所述的方法,其特征在于,所述目标边缘点也是由所述边缘管理设备删除的,由所述边缘管理设备删除所述目标边缘点的方式包括:
当所述边缘管理设备获取到针对所述目标边缘点的删除触发指令时,停止运行所述边缘代理设备,并删除在所述中心集群中关联存储的所述设备标识和所述区域标识;
在所述设备标识和所述区域标识被删除后,所述目标边缘点为不可用状态。
12.如权利要求1所述的方法,其特征在于,所述目标云应用被运行在不同边缘点包括的边缘服务器中,一个边缘点对应一个物理边缘区域;
任一边缘点的边缘服务器根据相应物理边缘区域的区域标识,将所述目标云应用的应用画面输出显示到处于所述物理边缘区域内的客户端中。
13.一种云处理***,其特征在于,所述云处理***包含中心集群和多个边缘服务器,所述多个边缘服务器共享由所述中心集群提供的多种服务,所述多个边缘服务器包括目标边缘服务器,所述目标边缘服务器包括所述多个边缘服务器中,与目标云应用的客户端之间的物理距离最近的任一个边缘服务器;
所述目标边缘服务器用于获取目标云应用的运行数据,并在所述运行数据为第一类数据时,通过与所述中心集群之间的第一通信链路,将所述运行数据发送给所述中心集群;以及,在所述运行数据为第二类数据时,通过与所述中心集群之间的第二通信链路,将所述运行数据发送给所述中心集群;所述第一通信链路是与所述第一类数据的实时性要求相匹配的链路,所述第二通信链路是与所述第二类数据的实时性要求相匹配的链路,且所述第一类数据和所述第二类数据的实时性要求不同;
所述中心集群用于接收由所述目标边缘服务器发送的运行数据,并在所述运行数据为第一类数据时,通过与所述第一类数据匹配的服务对所述第一类数据进行响应;以及,所述中心集群还在所述运行数据为第二类数据时,通过与所述第二类数据匹配的服务对所述第二类数据进行响应;所述目标边缘服务器和关联的边缘代理设备构成目标边缘点,所述第一通信链路和所述第二通信链路均是在所述目标边缘点被标记为可用状态后建立的,所述目标边缘点是被边缘管理设备标记为可用状态的,所述边缘管理设备将所述目标边缘点标记为可用状态的方式包括:
由所述边缘管理设备获取所述目标边缘点关联的边缘代理设备的资源对象创建信息,并在所述边缘管理设备根据所述资源对象创建信息确定所述边缘代理设备创建了资源对象后,获取所述边缘代理设备的设备标识及所述边缘代理设备所在物理边缘区域的区域标识;在所述中心集群关联存储所述设备标识和所述区域标识后,将所述目标边缘点标记为可用状态。
14.一种数据处理装置,其特征在于,应用于云处理***,所述云处理***包含中心集群和多个边缘服务器,所述多个边缘服务器共享由所述中心集群提供的多种服务,所述数据处理装置具体是运行于目标边缘服务器中的一个计算机程序,所述目标边缘服务器包括所述多个边缘服务器中,与目标云应用的客户端之间的物理距离最近的任一个边缘服务器,所述装置包括:
获取单元,用于获取目标云应用的运行数据;
发送单元,用于当所述运行数据为第一类数据时,将所述运行数据通过所述目标边缘服务器与所述中心集群之间的第一通信链路发送给所述中心集群,以使所述中心集群采用与所述第一类数据匹配的服务对所述第一类数据进行响应;所述第一通信链路是与所述第一类数据的实时性要求相匹配的链路;
所述发送单元,还用于当所述运行数据为第二类数据时,将所述运行数据通过第二通信链路发送给所述中心集群,以使所述中心集群采用与所述第二类数据匹配的服务对所述第二类数据进行响应,其中,所述第二通信链路是与所述第二类数据的实时性要求相匹配的链路,且所述第一类数据和所述第二类数据的实时性要求不同;所述目标边缘服务器和关联的边缘代理设备构成目标边缘点,所述第一通信链路和所述第二通信链路均是在所述目标边缘点被标记为可用状态后建立的,所述目标边缘点是被边缘管理设备标记为可用状态的,所述边缘管理设备将所述目标边缘点标记为可用状态的方式包括:
由所述边缘管理设备获取所述目标边缘点关联的边缘代理设备的资源对象创建信息,并在所述边缘管理设备根据所述资源对象创建信息确定所述边缘代理设备创建了资源对象后,获取所述边缘代理设备的设备标识及所述边缘代理设备所在物理边缘区域的区域标识;在所述中心集群关联存储所述设备标识和所述区域标识后,将所述目标边缘点标记为可用状态。
15.一种边缘服务器,其特征在于,包括处理器、输入设备、输出设备和存储器,所述处理器、所述输入设备、所述输出设备和所述存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1~12任一项所述的方法。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1~12任一项所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111286046.0A CN113722077B (zh) | 2021-11-02 | 2021-11-02 | 数据处理方法、***、相关设备、存储介质及产品 |
EP22888983.8A EP4379545A1 (en) | 2021-11-02 | 2022-09-07 | Data processing method and system, related device, storage medium and product |
PCT/CN2022/117512 WO2023077952A1 (zh) | 2021-11-02 | 2022-09-07 | 数据处理方法、***、相关设备、存储介质及产品 |
US18/200,437 US20230300203A1 (en) | 2021-11-02 | 2023-05-22 | Data processing method and system, related device, storage medium, and product |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111286046.0A CN113722077B (zh) | 2021-11-02 | 2021-11-02 | 数据处理方法、***、相关设备、存储介质及产品 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113722077A CN113722077A (zh) | 2021-11-30 |
CN113722077B true CN113722077B (zh) | 2022-03-15 |
Family
ID=78686412
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111286046.0A Active CN113722077B (zh) | 2021-11-02 | 2021-11-02 | 数据处理方法、***、相关设备、存储介质及产品 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230300203A1 (zh) |
EP (1) | EP4379545A1 (zh) |
CN (1) | CN113722077B (zh) |
WO (1) | WO2023077952A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113722077B (zh) * | 2021-11-02 | 2022-03-15 | 腾讯科技(深圳)有限公司 | 数据处理方法、***、相关设备、存储介质及产品 |
CN114513524B (zh) * | 2022-02-15 | 2023-08-29 | 北京百度网讯科技有限公司 | 一种资源同步方法、装置、电子设备和存储介质 |
CN114710485B (zh) * | 2022-02-21 | 2023-10-27 | 联想(北京)有限公司 | 处理方法和处理装置 |
CN114567648B (zh) * | 2022-03-24 | 2024-07-02 | 阿里巴巴(中国)有限公司 | 分布式云*** |
CN114760307B (zh) * | 2022-03-31 | 2024-06-21 | 度小满科技(北京)有限公司 | 数据处理方法、装置、存储介质和处理器 |
CN114528225B (zh) * | 2022-04-22 | 2022-06-21 | 深圳市思迅网络科技有限公司 | 一种断网可续用的SaaS软件开发方法、装置及*** |
CN114860349B (zh) * | 2022-07-06 | 2022-11-08 | 深圳华锐分布式技术股份有限公司 | 数据加载方法、装置、设备及介质 |
CN115277569A (zh) * | 2022-07-21 | 2022-11-01 | Oppo广东移动通信有限公司 | 多媒体通信方法、***、相关设备及存储介质 |
CN115964181B (zh) * | 2023-03-10 | 2023-06-06 | 之江实验室 | 一种数据处理的方法、装置、存储介质及电子设备 |
CN117579679B (zh) * | 2024-01-15 | 2024-04-19 | 海马云(天津)信息技术有限公司 | 信令交互方法和装置、电子设备及存储介质 |
CN117939503B (zh) * | 2024-03-21 | 2024-05-31 | 中国电子科技集团公司第二十八研究所 | 基于云边协同架构的低空空域信息汇集处理方法及*** |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104780164B (zh) * | 2015-03-25 | 2016-12-21 | 腾讯科技(深圳)有限公司 | 一种运行游戏客户端的方法和装置 |
CN105681423A (zh) * | 2016-01-21 | 2016-06-15 | 山东省计算中心(国家超级计算济南中心) | 一种基于多路径传输的农机调度方法及监控终端 |
US11016824B1 (en) * | 2017-06-12 | 2021-05-25 | Pure Storage, Inc. | Event identification with out-of-order reporting in a cloud-based environment |
GB2583511B (en) * | 2019-05-02 | 2024-01-10 | Sony Interactive Entertainment Inc | Method of and system for controlling the rendering of a video game instance |
CN111629024A (zh) * | 2020-04-02 | 2020-09-04 | 北京大米科技有限公司 | 一种数据传输控制方法、装置、存储介质及电子设备 |
CN111698470B (zh) * | 2020-06-03 | 2021-09-03 | 中科民盛安防(河南)有限公司 | 一种基于云边协同计算的安防视频监控***及其实现方法 |
CN111882626B (zh) * | 2020-08-06 | 2023-07-14 | 腾讯科技(深圳)有限公司 | 图像处理方法、装置、服务器及介质 |
CN112448858B (zh) * | 2021-02-01 | 2021-04-23 | 腾讯科技(深圳)有限公司 | 网络通信控制方法及装置、电子设备和可读存储介质 |
CN112925646A (zh) * | 2021-03-12 | 2021-06-08 | 威胜信息技术股份有限公司 | 一种电力数据边缘计算***以及计算方法 |
CN113018871A (zh) * | 2021-04-19 | 2021-06-25 | 腾讯科技(深圳)有限公司 | 业务处理方法、装置及存储介质 |
CN113018851B (zh) * | 2021-05-28 | 2021-08-06 | 腾讯科技(深圳)有限公司 | 游戏处理方法、装置、计算机设备及存储介质 |
CN113722077B (zh) * | 2021-11-02 | 2022-03-15 | 腾讯科技(深圳)有限公司 | 数据处理方法、***、相关设备、存储介质及产品 |
-
2021
- 2021-11-02 CN CN202111286046.0A patent/CN113722077B/zh active Active
-
2022
- 2022-09-07 WO PCT/CN2022/117512 patent/WO2023077952A1/zh active Application Filing
- 2022-09-07 EP EP22888983.8A patent/EP4379545A1/en active Pending
-
2023
- 2023-05-22 US US18/200,437 patent/US20230300203A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4379545A1 (en) | 2024-06-05 |
CN113722077A (zh) | 2021-11-30 |
US20230300203A1 (en) | 2023-09-21 |
WO2023077952A1 (zh) | 2023-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113722077B (zh) | 数据处理方法、***、相关设备、存储介质及产品 | |
CN112769938B (zh) | 一种基于QUIC的Kubernetes云边通信***与方法 | |
CN113141386B (zh) | 私有网络中Kubernetes集群的接入方法、装置、设备和介质 | |
US11252119B2 (en) | Message logging using two-stage message logging mechanisms | |
CN114095557B (zh) | 数据处理方法、装置、设备以及介质 | |
CN111309374A (zh) | 一种微服务***和微服务***中的服务调用方法 | |
WO2019062836A1 (zh) | 网络切片管理方法及其装置 | |
CN112104754B (zh) | 网络代理方法、***、装置、设备及存储介质 | |
CN105577801B (zh) | 一种业务加速方法及装置 | |
JP2010231759A (ja) | モバイルクラウドプラットホームを具備したモバイル端末装置 | |
CN109068153A (zh) | 视频播放方法、装置和计算机可读存储介质 | |
CN112698838B (zh) | 多云容器部署***及其容器部署方法 | |
US11418618B2 (en) | Eco: edge-cloud optimization of 5G applications | |
CN111800441B (zh) | 数据处理方法、***、装置、用户端服务器、用户端及管控服务器 | |
CN114979144B (zh) | 云边通信方法、装置及电子设备 | |
CN113472638B (zh) | 边缘网关控制方法及***、装置、电子设备、存储介质 | |
KR20150032085A (ko) | 대용량 데이터 처리 및 고성능 nfv 시스템 구축 방법 | |
US20220272156A1 (en) | AUTOMATICALLY SCALING A NUMBER OF DEPLOYED APPLICATION DELIVERY CONTROLLERS (ADCs) IN A DIGITAL NETWORK | |
CN113746851A (zh) | 一种支持实时解析grpc请求的代理***和方法 | |
EP3997577A1 (en) | Controlling a destination of network traffic | |
CN111988269A (zh) | 经由分布式数据存储库提供授权信息的策略管理*** | |
CN111538932B (zh) | 一种跨平台、终端及内外网的外事管理方法 | |
CN113794652B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
US12052175B2 (en) | Controlling a destination of network traffic | |
US11985072B2 (en) | Multimedia data stream processing method, electronic device, and storage medium |
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 |