CN113395291B - 流量控制方法、装置、电子设备及存储介质 - Google Patents

流量控制方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN113395291B
CN113395291B CN202110745525.8A CN202110745525A CN113395291B CN 113395291 B CN113395291 B CN 113395291B CN 202110745525 A CN202110745525 A CN 202110745525A CN 113395291 B CN113395291 B CN 113395291B
Authority
CN
China
Prior art keywords
target
cloud
application
type
resource pool
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
CN202110745525.8A
Other languages
English (en)
Other versions
CN113395291A (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.)
Beijing IQIYI Science and Technology Co Ltd
Original Assignee
Beijing IQIYI Science and Technology Co Ltd
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 Beijing IQIYI Science and Technology Co Ltd filed Critical Beijing IQIYI Science and Technology Co Ltd
Priority to CN202110745525.8A priority Critical patent/CN113395291B/zh
Publication of CN113395291A publication Critical patent/CN113395291A/zh
Application granted granted Critical
Publication of CN113395291B publication Critical patent/CN113395291B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/33Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/40Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
    • A63F2300/406Transmission via wireless network, e.g. pager or GSM

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明实施例提供了一种流量控制方法、装置、电子设备及存储介质。该流量控制方法包括:接收终端发送的应用运行请求,所述应用运行请求携带目标应用信息;在所述目标应用信息对应的目标资源池内,基于当前轮询周期确定目标云设备;在任意一个轮询周期中,所述目标资源池中各类型云设备的数量比例满足目标流量分配比例,所述目标流量分配比例为所述目标应用信息对应的流量分配比例;控制所述目标云设备响应所述应用运行请求。本发明实现了对流量的分配控制。

Description

流量控制方法、装置、电子设备及存储介质
技术领域
本发明涉及计算机技术领域,特别是涉及一种流量控制方法、装置、电子设备及存储介质。
背景技术
云游戏是以云计算为基础的游戏方式。在云游戏的运行模式下,所有游戏都在业务服务器虚拟的诸如云手机的云设备上运行。云设备将渲染后的游戏画面和音频压缩发送至用户使用的终端,并接收用户操作终端输入的指令,基于指令控制游戏运行,实现游戏的交互。
其中,在云设备来自多个厂商的情况下,不同厂商对应的云设备具有性能差异,使得不同厂商对应的云设备运行同一游戏的效果具有差异。且各厂商之间会涉及因流量分配问题带来的收益差异问题。因而如何高效地为不同厂商分配流量,以协调来自不同厂商的云设备为用户提供游戏服务,就成为了一个热门话题。因而,亟需一种流量控制方法,实现流量向厂商的分配控制。
发明内容
本发明实施例的目的在于提供一种流量控制方法、装置、电子设备及存储介质,实现了对流量的分配控制。具体技术方案如下:
在本发明实施的第一方面,首先提供了一种流量控制方法,包括:
接收终端发送的应用运行请求,所述应用运行请求携带目标应用信息;
在所述目标应用信息对应的目标资源池内,基于当前轮询周期确定目标云设备;在任意一个轮询周期中,所述目标资源池中各类型云设备的数量比例满足目标流量分配比例,所述目标流量分配比例为所述目标应用信息对应的流量分配比例;
控制所述目标云设备响应所述应用运行请求。
在本发明实施的第二方面,提供了一种流量控制装置,包括:
接收模块,用于接收终端发送的应用运行请求,所述应用运行请求携带目标应用信息;
确定模块,用于在所述目标应用信息对应的目标资源池内,基于当前轮询周期确定目标云设备;在任意一个轮询周期中,所述目标资源池中各类型云设备的数量比例满足目标流量分配比例,所述目标流量分配比例为所述目标应用信息对应的流量分配比例;
控制模块,用于控制所述目标云设备响应所述应用运行请求。
在本发明实施的第三方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一的方法步骤。
在本发明实施的第四方面,还提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一的流量控制方法。
在本发明实施的第五方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一的流量控制方法。
本发明实施例提供的流量控制方法、装置、电子设备及存储介质,在接收来自于终端发送的携带有目标应用信息的应用运行请求后,可以通过在目标应用信息对应的目标资源池内,基于当前轮询周期确定目标云设备。从而控制目标云设备响应应用运行请求。其中,在任意一个轮询周期中,目标资源池中各类型云设备的数量比例满足目标流量分配比例。该目标流量分配比例为目标应用信息对应的流量分配比例。该技术方案中,由于一个轮询周期内,用于确定响应应用运行请求的目标云设备的目标资源池中,各类型云设备的数量比例满足不同类型的云设备的目标流量分配比例。因此,在一个轮询周期内,从目标资源池内直接获取的响应不同终端发送的应用运行请求的各目标云设备中,不同类型的云设备的数量比例满足目标流量比例。因而,高效地实现了按照不同类型的云设备的目标流量分配比例将流量分配至不同类型的云设备,完成流量向不同类型的云设备的分配控制。在云设备的类型包括厂商类型的情况下,该技术方案实现了流量向厂商的分配控制。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本发明实施例提供的一种云设备系统的结构示意图;
图2为本发明实施例提供的另一种云设备系统的示意图;
图3为本发明实施例提供的一种流量控制方法的流程图;
图4为本发明实施例提供的一种目标云设备确定方法的流程图;
图5为本发明实施例提供的一种目标资源池处理方法的流程图;
图6为本发明实施例提供的一种流量控制装置的框图;
图7为本发明实施例提供的一种电子设备的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
请参考图1,其示出了本发明实施例提供的一种云设备系统的结构示意图。如图1所示,云设备系统100包括:管理服务器101以及至少一个云设备102。管理服务器101与各云设备102之间通过网络连接。可选的,该网络可以是无线网络(wireless network)。该无线网络可以包括:无线保真网络、第三代(3rd-generation,3G)移动通信技术网络或通用分组无线服务技术(general packet radio service,GPRS)等。需要说明的是,图1以云设备系统包括三个云设备(102A-102C)为例进行说明,图1中云设备的数量并不对云设备系统中可包括的云设备的数量进行限定。
其中,云设备102可以是虚拟设备,也可以是实体设备。示例性的,云设备102可以是通过虚拟技术在云服务器上虚拟出的逻辑设备。具体而言,任意一台云服务器上可以虚拟出多台逻辑设备。则图1所示的云设备系统所包括的各云设备102可以是相同或者不同的云服务器上虚拟出的逻辑设备。可选地,图1所示的云设备系统所包括的各云设备102可以是不同类型的云设备。云设备的类型可以指的是云设备的厂商类型,或者,云设备也可以指的是云设备的部署地区类型。其中,云设备的厂商类型可以指的是虚拟出云设备的云服务器所属的厂商。在云设备的类型为云设备的厂商类型的场景下,图1所示的云设备系统所包括的三个云设备的厂商类型可以不同,分别为厂商A至厂商C。本发明实施例以云设备的类型为云设备的厂商类型为例进行说明书。当云设备是实体设备时,其包括但不限于智能手机、平板电脑、膝上型便携计算机、台式计算机、服务器等。
在实践中,云设备可以通过安装云应用(也可称为云应用程序,云APP,云端应用等)来提供相应的网络服务,比如云设备通过安装云游戏应用来提供云游戏服务,也即云应用运行在云设备上。具体而言,任意一个云设备上可以运行一个或多个云应用;当安装有多个云应用时,不同云应用的应用标识一般不同。在一种可能的场景中,一个云设备中可以安装有应用标识相同或不同的多个云应用。其中,针对任意一种云应用,一个云设备在同一时间仅能运行一个云应用,即同一时间一个云设备仅能为一个终端提供该云应用相应的网络服务。因而,受限于云设备运行云应用时的独占能力,以及在云设备为虚拟设备时云服务器的虚拟云设备的能力,云设备资源较为宝贵。
用户可以通过终端实现与云设备的通信,从而使用安装于云设备的云应用。终端为实体设备,其可以是支持具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机、台式计算机等。在实践中,终端可以通过安装客户端应用来提供相应的网络服务,比如终端通过安装视频播放器来提供视频或图像播放服务。
作为一个实施例,云设备与终端通过云端通信模块建立通信连接。可选的,云端通信模块可内置于云设备或者独立于云设备,可用于实现云设备上的一个或多个云应用与其对应的终端之间的通信连接,和/或用于实现一个或多个云设备与其对应的终端之间的通信连接。上述所说的模块是广义的,可以是类、函数、线程、进程等,示例性的,云端通信模块可以为云应用服务程序。
在图1所示例的云设备系统中,一方面,云设备用于运行云应用,并向终端发送运行云应用时的数据流,终端则用于展示接收到的数据流。另一方面,终端用于采集用户的操作数据,并向云设备发送操作数据(采集到的操作数据或处理后的操作数据),云设备则基于接收到的操作数据对用户操作进行响应,并继续向终端发送响应数据流,终端则继续展示接收到的响应数据流。该数据流可以包括音频流、视频流或者指令流等。如此,云设备与终端形成闭环,用户可以通过终端来使用云设备上安装的云应用。由于云应用实际并不运行在终端中,因此有利于降低终端的运行资源。
管理服务器101可以用于为终端分配为其提供云应用相应的网络服务的云设备。可选的,管理服务器101可以包括分布式数据库,或者管理服务器可以连接有分布式数据库。该分布式数据库可以用于存储云设备的设备信息和/或云设备安装的应用的应用信息。示例的,分布式数据库可以为Redis。Redis为一个高性能的关键字-数值(key-value)类型的分布式数据库。该分布式数据库为一个单线程运行的数据库,其可以将并发请求串行化。Redis具有原子操作特性,可以取代相关技术中云设备数据库的读写锁机制。
本发明实施例中,以云设备安装的应用为云游戏,云设备为云手机为例。在管理服务器将一个运行有云游戏的云手机分配给终端后,该云手机向终端发送云游戏渲染完成后包括游戏画面和音频的游戏视频流,终端则可通过客户端应用,比如视频播放器展示接收到的视频流。进一步,终端每采集到一次用户的操作数据,则向云手机发送操作数据,云手机则基于接收到的操作数据进行响应并刷新视频流,以及向终端发送刷新后的视频流,如此则可实现用户通过终端来使用云手机上安装的云游戏。
可以理解的是,图1中的网络和设备的数目仅是示意。根据实际需要,云设备系统可以包括任意数目的网络和设备,本发明对此不做限制。
请参考图2,其示出了本发明实施例提供的一种云设备系统的示意图。如图2所示,该实施环境包括:终端201以及图1所示的云设备系统。终端201与云设备系统中管理服务器202(图2中标识为云游戏后台)通过网络连接,管理服务器202用于实现云设备资源池中各云设备203的调度。其中,该管理服务器202包括云设备资源池。云设备资源池可以包括不同类型的云设备。管理服务器上可以运行有调度模型,该调度模型可以用于确定云设备资源池中所需调度的不同类型的云设备。进而使得管理服务器基于确定结果实现对云设备资源池中各云设备的调度。在云游戏场景下,终端即游戏玩家所使用的终端,管理服务器又称云游戏后台,云设备资源池又称云手机资源池。
可选的,继续参考图2,该云设备系统还可以包括:分布式配置中心204。分布式配置中心204可以与管理服务器202通过网络连接。其中,分布式配置中心204为管理服务器202和终端201等设备提供外部化配置支持。分布式配置中心204可以存储有多个配置文件,该配置文件可以用于为数据处理系统包括的设备中运行的计算机程序提供配置参数和初始设置信息等。示例的,分布式配置中心204可以为一台或多台服务器,或者云服务器集群等。本发明实施例中,该云设备系统还包括:网关205。网关205分别与终端201和管理服务器202连接。网关205用于实现终端201和管理服务器202的互联。
请参考图3,其示出了本发明实施例提供的一种流量控制方法的流程图。该流量控制方法可以应用于图1所示的云设备系统或者图2所示的云设备系统。由图1或图2中管理服务器执行。如图3所示,流量控制方法包括:
步骤301、接收终端发送的应用运行请求,应用运行请求携带目标应用信息。
本发明实施例中,用户在想要运行某款目标云应用时,可以通过终端上安装的客户端应用所对应的应用标识执行设定输入。终端在接收到针对该应用标识的设定输入后,可以响应于该设定输入,向管理服务器发送应用运行请求,以使得管理服务器可以接收来自于终端的应用运行请求。管理服务器在接收到来自于终端的应用运行请求后,可以执行后续为该终端分配云设备的过程。其中,针对应用标识的设定操作可以包括点击操作、长按操作或者滑动操作等。
其中,应用运行请求携带有目标应用信息,该目标应用信息可以包括:应用标识和/或应用入口类型标识。
示例性的,应用入口类型可以包括但不限于如下至少一种:移动端类型、H5(HTML5,HTML为构建网页内容的一种描述语言)类型或个人计算机(Personal Computer,PC)端(或终端)类型。
可选的,应用运行请求可以包括应用标识,该应用标识用于指示目标云应用。目标云应用即为用户想要进入的云应用。
示例性的,应用标识可以为云应用的身份标识号(Identity document,ID),或应用名称,对此不作穷举,其用于唯一标识云应用。
步骤302、在目标应用信息对应的目标资源池内,基于当前轮询周期确定目标云设备。在任意一个轮询周期中,目标资源池中各类型云设备的数量比例满足目标流量分配比例,目标流量分配比例为目标应用信息对应的流量分配比例。
本发明实施例中,管理服务器可以包括一个或多个不同的应用信息分别对应的资源池。任意一个资源池中包括的各类型云设备的数量比例满足该资源池所对应的应用信息的流量分配比例。其中,任意一个应用信息对应的各类型云设备的流量分配比例可以是根据实际需求确定的。流量分配比例的确定方式可以为基于预设方式进行均衡处理而自动计算得到的,也可以为用户手动设置的,本发明实施例对于流量分配比例的确定方式无特别限制。可选的,云设备的类型包括但不限于如下至少一种:厂商类型、云设备所部署的地域类型、云设备的处理能力类型。
可选的,任意一个应用信息对应的各类型云设备的流量分配比例可以是工作人员基于各个厂商提供的云服务器所虚拟出的云设备的性能确定。例如,当厂商所提供的云设备的性能越高时,该厂商对应的流量分配比例越大。这样,由于任意一个应用信息对应的各类型云设备的流量分配比例可以基于云应用、云设备等实际情况进行修改,例如增加厂商和修改各个厂商之间的流量分配比例等。因此,灵活设置的配置文件,增加了管理服务器对各个厂商流量的灵活控制。
需要说明的是,在目标应用信息为应用标识时,目标流量分配比例为应用标识对应的流量分配比例。
在目标流量分配比例为应用入口类型标识时,目标流量分配比例为应用入口类型标识对应的流量分配比例。
在目标应用信息包括应用标识和应用入口类型标识时,目标流量分配比例可以为目标信息对应的流量分配比例。该目标信息可以是采用设定算法,对应用标识和应用入口类型标识进行处理后得到的信息。示例性的一种实施例中,目标信息可以是对应用标识和应用入口类型标识进行拼接处理后得到的信息。或者,示例性的另一种实施例中,目标信息可以是将应用标识与应用入口标识输入至合并模型得到的信息。或者,示例性的另一种实施例中,目标信息可以是将应用标识与应用入口标识进行组合处理得到的信息。本发明实施例对此不作限定,保证目标信息是基于应用标识以及应用入口类型标识确定的唯一标识即可。基于此,不难理解的是,在目标应用信息包括应用标识和应用入口类型标识的情况下,与目标应用信息对应的任何信息,均指的是与目标信息对应的信息。例如,目标应用信息对应的目标资源池,也即是目标信息对应的目标资源池。
本发明实施例中,管理服务器在接收到终端发送的应用运行请求后,可以确定该应用运行请求所在的当前轮询周期。在应用运行请求携带的目标应用信息对应的目标资源池内,从目标资源池内将当前轮询周期内未被作为目标云设备的一个云设备确定为目标云设备。其中,任意一个轮询周期内,目标资源池中一个云设备仅能被调度一次。即任意一个轮询周期内,目标资源池中一个云设备仅能一次被作为目标云设备。
步骤303、控制目标云设备响应应用运行请求。
本发明实施例中,管理服务器可以控制可分配云设备运行目标应用请求对应的目标应用,并将运行目标应用过程中生成的视频流发送至目标终端。以控制目标云设备响应应用运行请求,为目标终端提供目标应用对应的网络服务。其中目标终端为目标运行请求的发送终端。
本发明实施例中,在应用信息包括应用标识,且云设备的类型指的是厂商类型的情况下,本发明实施例提供的流量控制方法,可以为应用级别和厂商级别的流量分配策略。也即是,管理服务器在为终端分配云设备时,考虑到云设备所属厂商以及终端请求运行的目标应用两个因素。或者,在应用信息包括应用入口类型标识,且云设备的类型指的是厂商类型的情况下,本发明实施例提供的流量控制方法,可以为应用入口级别和厂商级别的流量分配策略。也即是,管理服务器在为终端分配云设备时,考虑到云设备所属厂商以及终端请求运行的目标应用的应用入口两个因素。或者,在应用信息包括应用标识和应用入口类型标识,且云设备的类型指的是厂商类型的情况下,本发明实施例提供的流量控制方法,可以为应用级别、应用入口级别和厂商级别的流量分配策略。也即是,管理服务器在为终端分配云设备时,考虑到云设备所属厂商、终端请求运行的目标应用以及目标应用的应用入口三个因素。这样,基于云设备所属厂商的维度为终端分配云设备。有效地解决了在云设备系统中多个云设备所属多个不同的厂商时,各个厂商之间涉及的流量收益和盈利问题,实现了精准控制各个厂商流量分配比例。并且在为终端分配云设备时,不仅考虑了云设备所属厂商的维度,还考虑了终端可请求运行的应用的维度。提高了分配云设备的粒度,即资源管理的粒度,实现了对云设备更为精准地分配。进而提使得数据处理系统的更加高可用,提升了系统容错率。
本发明实施例提供的流量控制方法,在接收来自于终端发送的携带有目标应用信息的应用运行请求后,可以通过在目标应用信息对应的目标资源池内,基于当前轮询周期确定目标云设备。从而控制目标云设备响应应用运行请求。其中,在任意一个轮询周期中,目标资源池中各类型云设备的数量比例满足目标流量分配比例。该目标流量分配比例为目标应用信息对应的流量分配比例。该技术方案中,由于一个轮询周期内,用于确定响应应用运行请求的目标云设备的目标资源池中,各类型云设备的数量比例满足不同类型的云设备的目标流量分配比例。因此,在一个轮询周期内,从目标资源池内直接获取的响应不同终端发送的应用运行请求的各目标云设备中,不同类型的云设备的数量比例满足目标流量比例。因而,高效地实现了按照不同类型的云设备的目标流量分配比例将流量分配至不同类型的云设备,完成流量向不同类型的云设备的分配控制。在云设备的类型包括厂商类型的情况下,该技术方案实现了流量向厂商的分配控制。
可选的,本发明实施例还提供了一种流量控制方法的流程图。该流量控制方法可以应用于图1所示的云设备系统或者图2所示的云设备系统。由图1或图2中管理服务器执行。流量控制方法包括:
步骤401、接收终端发送的应用运行请求,应用运行请求携带目标应用信息。
步骤401的解释和实现方式可以参考前述步骤301的解释和实现方式,本公开实施例对此不做赘述。
步骤402、在目标应用信息对应的目标资源池内,基于当前轮询周期确定目标云设备。在任意一个轮询周期中,目标资源池中各类型云设备的数量比例满足目标流量分配比例,目标流量分配比例为目标应用信息对应的流量分配比例。
步骤402的解释和实现方式可以参考前述步骤302的解释和实现方式,本公开实施例对此不做赘述。
需要说明的是,在一种可选地实现方式中,管理服务器在目标应用信息对应的目标资源池内,基于当前轮询周期确定目标云设备的过程可以包括:管理服务器从多个类型标识中,将当前轮询周期内未被轮询到的任一类型标识指示的类型作为目标类型。在目标资源池的目标类型的云设备中,确定目标云设备。
其中,多个类型标识指的是目标资源池内包括的多个云设备的类型标识。管理服务器在一个轮询周期内,多个类型标识中任意一个类型标识的仅能被轮询到一次。即任意一个轮询周期内,多个类型标识中任意一个类型标识仅能一次被作为目标类型的类型标识。示例的,管理服务器可以存储有应用信息与多个类型标识的对应关系。该多个类型标识指示的是其对应的应用信息的资源池内包括的云设备的类型。管理服务器可以在一个轮询周期内依次将各类型标识确定为目标类型。从而按照确定目标类型的顺序,依次将目标资源池云设备确定为目标云设备。
可选的,管理服务器可以从多个类型标识中,按照第一选择策略将当前轮询周期内未被轮询到的一个类型标识指示的类型作为目标类型。并在目标资源池的目标类型的云设备中,按照第二选择策略确定目标云设备。其中,第一选择策略包括但不限于以下任意一种:将当前轮询周期内未被轮询到的任意一个类型标识指的是的类型作为目标类型、基于当前轮询周期内未被轮询到类型标识的设定排列顺序确定目标类型对应的类型标识、将当前轮询周期内未被轮询到类型标识中,符合设定条件(自定义条件,本发明实施例对此无特别限制)的类型标识指示的类型作为目标类型、在当前轮询周期内未被轮询到类型标识中,基于各类型标识对应的优先级确定目标类型对应的类型标识。类似的,第二选择策略包括但不限于以下一种:将目标资源池的目标类型的云设备中,任意一个云设备作为目标云设备、基于目标资源池的目标类型的云设备的设定排列顺序确定目标云设备、将目标资源池的目标类型的云设备中符合设定条件的云设备确定为目标云设备、在目标资源池的目标类型的云设备基于各云设备对应的优先级确定目标云设备。
示例的,管理服务器可以从多个类型标识中,将当前轮询周期内未被轮询到的类型标识中,对应优先级最高的类型标识指示的类型作为目标类型。并在目标资源池的目标类型的云设备中,对应优先级最高的云设备确定为目标云设备。
本发明实施例中,与任意一个应用信息对应的多个类型标识可以具有设定排列顺序。该设定排列顺序可以是随机确定的,或者该设定排列顺序也可以是基于云设备的性能由优到劣的顺序,或者,还可以是基于其他维度的依据排序而成的等,对此无特别限定。则管理服务器可以在一个轮询周期内,按照设定排列顺序,依次将类型标识指示的类型作为目标类型。
在另一种可选的实现方式中,如图4所示,管理服务器在目标应用信息对应的目标资源池内,基于当前轮询周期确定目标云设备的过程(步骤302)可以包括:
步骤501、确定目标资源池在当前轮询周期内对应的目标列表。其中,目标列表中对应维护云设备与设备类型。
可选的,管理服务器可以存储有应用信息与列表的对应关系。任意一个应用信息对应的列表中,各列表项依次记录有该应用信息对应资源池可包括的多个云设备的类型标识。即前述应用信息对应的多个类型标识。管理服务器可以根据应用信息与列表的对应关系,确定目标应用信息对应的目标列表。
示例的,管理服务器可以存储有一个或多个第三键值对,以记录应用信息与列表的对应关系。其中,各第三键值对的键域用于存储应用信息。第三键值对的值域可以用于存储对应的列表。管理服务器可以从存储有目标应用信息的键域所对应的值域中,获取目标列表。具体的示例的,管理服务器可以存储有分配配置文件。该分配配置文件可以为Map<String,List<Integer>>结构的配置体。分配配置文件的数据结构为Map(一种数据结构,该数据结构是一种键-值对的集合),其包括一个或多个第三键值对。各第三键值对的键域(key)的数据类型可以为字符串类型(String),即应用信息可以以string类型存储。各第三键值对的值域(value)为列表空间,其存储的列表中各列表项的数据类型可以为整数类型(Integer)。
步骤502、确定应用运行请求在目标列表中的目标索引。
可选的一种实施例中,管理服务器确定应用运行请求在目标列表中的目标索引的过程可以包括:管理服务器采用目标列表的长度对总数量进行取余处理,得到目标索引。其中,总数量为接收到的目标应用运行请求的数量,目标应用运行请求携带目标应用信息。
管理服务器可以统计接收到目标应用运行请求的总数量。并采用目标公式对目标列表的长度对总数量进行取余处理,得到目标索引。其中目标公式满足:
addValue%listSize=index;
其中,addValue为总数量,listSize为列表的长度,index为目标索引,%代表取余运算。
示例的,假设应用信息为应用标识。管理服务器可以在接收到终端发送的应用运行请求后,解析该应用运行请求,得到该应用运行请求包括的应用标识1。管理服务器获取当前轮询周期内接收到所有应用运行请求中,包括应用标识1的目标应用运行请求的总数量。
或者,可选的另一种实施例中,管理服务器确定应用运行请求在目标列表中的目标索引的过程可以包括:管理服务器基于全局计数器确定目标索引。全局计数器用于在计数周期内对接收到的目标应用运行请求计数,计数周期与轮询周期对应。
可选的,由于终端发送的应用运行请求可以包括不同的应用信息。则管理服务器可以设置有多个全局计数器(AtomicInteger)。一个全局计数器与一种应用信息对应。任意一个全局计数器用于在计数周期内对接收到的携带有对应应用信息的运行请求计数。不难理解的是,全局计数器的数量可以与第三键值对的数量相同。示例的,假设管理服务器存储有四个第三键值对。该四个第三键值对的键域可以包括的信息依次为:第一应用信息、第二应用信息、第三应用信息以及第四应用信息。则管理服务器可以设置有4个全局计数器。第一全局计数器用于记录在计数周期内包括第一应用信息的应用运行请求的数量。第二全局计数器用于记录在计数周期内包括第二应用信息的应用运行请求的数量。第三全局计数器用于记录在计数周期内包括第三应用信息的应用运行请求的数量。第四全局计数器用于记录在计数周期内包括第四应用信息的应用运行请求的数量。
示例的,管理服务器可以在一个轮询周期内,每次接收到与其连接的终端发送目标应用运行请求时,使得目标应用信息对应的全局计数器执行加N处理。基于处理后得到数值确定目标索引。其中,N为正整数。例如,假设N=1,则管理服务器可以在一个轮询周期内,每次接收到与其连接的终端发送目标应用运行请求时,使得目标应用信息对应的全局计数器执行加N处理后得到数值即为目标索引。本发明实施例中,全局计数器又称为全局原子累加器,其具有原子操作特性。管理服务器通过全局计数器统计接收到的目标应用运行请求的总数量,可以使得因全局计数器的原子操作特性,保证多线程并发时,统计得到的目标应用运行请求总数量的准确性。
步骤503、将目标索引对应的云设备确定为目标云设备。
可选的,管理服务器在确定目标索引后,可以采用get方法获取该目标索引对应的类型标识。将目标资源池内类型标识指示的类型的云设备确定为目标云设备。示例的,对目标列表采用list.get(index)方法,list表示目标列表,index表示目标索引。
本发明实施例中,图4所示的确定目标云设备的方法复杂程度较低,因而确定目标云设备的过程耗时较低,提升了管理服务器为终端分配云设备的方法的性能,非常符合诸如云游戏等云应用对低延迟的要求。
时间复杂度可以定性描述算法的运行时间,因而该算法耗时非常小,示例的,以云应用为云游戏,云设备的类型指的是厂商类型为例。假设目标应用信息包括:应用标识以及应用入口类型标识。且假设管理服务器存储有4个第三键值对。第一个第三键值对的键域为game1_H5,值域为列表1。列表1包括厂商A、厂商A、厂商A、厂商B和厂商B。第二个第三键值对的键域为game1_PC,值域为列表2。列表2包括厂商A、厂商A、厂商B、厂商B和厂商B。第三个第三键值对的键域为game2_H5,值域为列表3。列表3包括厂商A、厂商A、厂商C、厂商C和厂商B。第四个第三键值对的键域为game2_PC,值域为列表4。列表4包括厂商A、厂商A、厂商C、厂商B和厂商B。且假设管理服务器在当前轮询周期内接收到的所有携带有game1_H5的应用运行请求的总数量为13。
管理服务器接收终端当前发送的应用运行请求,该应用运行请求包括目标应用标识game1,以及应用入口类型标识H5。管理服务器对该应用运行请求进行解析后,得到目标应用标识game1,以及应用入口类型标识H5。获取管理服务器接收的所有携带目标应用标识game1,以及应用入口类型标识H5的应用运行请求的总数量为13。管理服务器对目标应用标识game1,以及应用入口类型标识H5进行拼接处理得到game1_H5。获取第三键值对中,键域为game1_H5为第一个第三键值对值域中存储的列表1。管理服务器采用该总数量对列表1的长度5取余,得到取余值3。将列表1中目标索引为3对应的厂商标识所指示的厂商B的云设备确定为目标云设备。
步骤403、控制目标云设备响应应用运行请求。
步骤403的解释和实现方式可以参考前述步骤303的解释和实现方式,本公开实施例对此不做赘述。
本发明实施例中,在接收来自于终端发送的携带有目标应用信息的应用运行请求后,可以通过在目标应用信息对应的目标资源池内,基于当前轮询周期确定目标云设备。从而控制目标云设备响应应用运行请求。其中,在任意一个轮询周期中,目标资源池中各类型云设备的数量比例满足目标流量分配比例。该目标流量分配比例为目标应用信息对应的流量分配比例。该技术方案中,由于一个轮询周期内,用于确定响应应用运行请求的目标云设备的目标资源池中,各类型云设备的数量比例满足不同类型的云设备的目标流量分配比例。因此,在一个轮询周期内,从目标资源池内直接获取的响应不同终端发送的应用运行请求的各目标云设备中,不同类型的云设备的数量比例满足目标流量比例。因而,高效地实现了按照不同类型的云设备的目标流量分配比例将流量分配至不同类型的云设备,完成流量向不同类型的云设备的分配控制。在云设备的类型包括厂商类型的情况下,该技术方案实现了流量向厂商的分配控制。
可选的,本发明实施例提供的流量控制方法中,在执行步骤301或者步骤401之前,还可以包括创建或者更新资源池的过程。请参考图5,其示出了一种资源池处理方法的流程图。该方法可以由图1或图2所示的管理服务器执行。如图5所示,所述方法还包括:
步骤601、监听配置文件。其中,配置文件用于描述应用信息与云设备的流量分配比例之间的配置关系。
本发明实施例中,配置文件可以包括:一个或多个应用信息中,任意一个应用信息与不同类型的云设备的流量分配比例。管理服务器可以采用监听者模块或者观察者模式监听配置文件是否发生编辑处理,以便于在配置文件发生编辑处理后,即时获取不同应用信息对应的新的流量分配比例,使得管理服务器可以即时根据新的流量分配比例为终端分配云设备,实现动态按照流量分配比例切换流量,实现云设备分配。其中,在应用信息为应用标识时,配置文件可以包括应用标识与不同类型的云设备的流量分配比例。在应用信息为应用入口类型标识时,配置文件可以包括应用入口类型标识与不同类型的云设备的流量分配比例。在应用信息包括:应用标识和应用入口标识时,配置文件可以包括目标信息与不同类型的云设备的流量分配比例。该目标信息为应用标识与应用入口类型标识拼接处理后。
可选的,配置文件可以包括:应用信息与不同类型的云设备的流量分配比例的对应关系。或者,配置文件可以包括:应用信息与流量分配信息的对应关系,流量分配信息可以包括:云设备的类型标识与流量分配比例的对应关系。本发明实施例中,配置文件可以包括列表形式或者键值对形式,以记录前述各对应关系。需要说明的是,在配置文件包括:应用信息与流量分配信息的对应关系的情况下,配置文件可以分别存储两个对应关系,分别为应用信息与流量分配信息的对应关系,以及云设备的类型标识与流量分配比例的对应关系。或者,配置文件也可以存储一个二重嵌套对应关系。
一个示例的,配置文件可以包括第一映射列表以及多个第二映射列表。各第二映射列表用于流量分配信息,即用于记录云设备的类型标识与流量分配比例的对应关系。第一映射列表用于记录应用信息与第二映射列表的对应关系。
另一示例的,配置文件可以包括:多个第一键值对,任一第一键值对的键域用于存储应用信息,第一键值对的值域用于存储一个或多个第二键值对,任一第二键值对的键域用于存储云设备的类型标识,第二键值对的值域用于存储对应类型的云设备的流量分配比例。
本发明实施例中,在配置文件存储有一个二重嵌套对应关系的情况下,配置文件的数据结构可以为二重HashMap数据结构。配置文件中数据的数据类型可以是JS对象简谱(JavaScript Object Notation,JSON)。JSON为一种轻量级的数据交换格式。则配置文件采用Map<String,Map<Integer,BigDecimal>>存放JSON格式体。配置文件中第一重HashMap数据即为第一键值对。第二重HashMap数据即为第二键值对。由于配置文件为二重HashMap数据结构,因此,管理服务器可以通过遍历一次配置文件,即可得到各应用信息对应的流量分配比例,便于根据各应用信息对应的流量分配比例,生成各应用信息对应的资源池。各应用信息对应的流量分配比例的提取速度较快。
示例的,假设应用信息为应用标识,云设备的类型指的是厂商类型。则配置文件包括:{"应用标识":{"厂商A":X1,"厂商B":X2}}。假设应用信息为应用入口类型标识,云设备的类型指的是厂商类型。则配置文件包括:{"应用入口类型标识":{"厂商A":X1,"厂商B":X2}}。假设应用信息为应用入口类型标识,云设备的类型指的是厂商类型。则配置文件包括:{"目标信息":{"厂商A":X1,"厂商B":X2}}。在目标信息为应用标识与应用入口类型标识拼接处理后得到的情况下,配置文件包括:{"应用标识1_应用入口类型标识1":{"厂商A":0.2,"厂商B":0.8}}。该配置设置文件表示,包括应用标识1和应用入口类型标识1的应用信息对应2个键值对。第一键值对的键域为厂商A,值域为0.2。第二键值对的键域为厂商B,值域为0.8。即厂商A对应的流量分配比值为0.2,厂商B对应的流量分配比值为0.8。
本发明实施例中,通过配置文件的巧妙配置格式,可以灵活的更改游戏和渠道类型,增减厂商,或者改变厂商之间流量分配比例。因而,提高云设备系统提供的云游戏服务的容错性,使云设备系统更加高可用,便于长期为游戏玩家提供稳定的游戏环境。并且,若配置文件中,应用信息包括应用标识,且云设备的类型指的是厂商类型,则本发明实施例提供的流量控制方法,可以为应用级别和厂商级别的流量分配策略。也即是,管理服务器在为终端分配云设备时,考虑到云设备所属厂商以及终端请求运行的目标应用两个因素。或者,若配置文件中,应用信息包括应用入口类型标识,且云设备的类型指的是厂商类型,则本发明实施例提供的流量控制方法,可以为应用入口级别和厂商级别的流量分配策略。也即是,管理服务器在为终端分配云设备时,考虑到云设备所属厂商以及终端请求运行的目标应用的应用入口两个因素。或者,若配置文件中,应用信息包括应用标识和应用入口类型标识,且云设备的类型指的是厂商类型,则本发明实施例提供的流量控制方法,可以为应用级别、应用入口级别和厂商级别的流量分配策略,支持游戏+渠道+厂商级别的流量切换。也即是,管理服务器在为终端分配云设备时,考虑到云设备所属厂商、终端请求运行的目标应用以及目标应用的应用入口三个因素。这样,基于云设备所属厂商的维度为终端分配云设备。有效地解决了在云设备系统中多个云设备所属多个不同的厂商时,各个厂商之间涉及的流量收益和盈利问题,实现了精准控制各个厂商流量分配比例。并且在为终端分配云设备时,不仅考虑了云设备所属厂商的维度,还考虑了终端可请求运行的应用的维度。提高了分配云设备的粒度,即资源管理的粒度,实现了对云设备更为精准地分配。进而提使得数据处理系统的更加高可用,提升了系统容错率。并且,配置文件具有高可扩展性。例如,可以通过增加第一键值对中健域的内容,实现更多因素下的流量分配策略,便于应对未来复杂业务变化。
本发明实施例中,配置文件可以存储于分布式配置中心。管理服务器可以监听分布式配置中心的文件。当配置文件发生编辑处理时,管理服务器可以获取该配置文件,基于该配置文件及时更新配置文件。由于分布式配置中心内的配置文件可以编辑处理后立即生效,因此无需重启数据处理系统,提高了管理服务器进行流量控制的效率。
步骤602、基于配置文件,获取目标流量分配比例。
可选的,管理服务器可以从配置文件包括的应用信息与流量分配比例的对应关系中,获取目标应用信息对应的目标流量分配比例。
示例的,在应用信息为应用标识的情况下,管理服务器从配置文件中,获取应用标识对应的目标流量分配比例。在应用信息为应用入口类型标识的情况下,管理服务器从配置文件中,获取应用入口类型标识对应的目标流量分配比例。在应用信息包括:应用标识和应用入口标识的情况下,管理服务器对应用标识和应用入口类型标识进行拼接处理,得到目标信息。从配置文件中获取目标信息对应的流量分配比例,将该流量分配比例确定为目标应用信息对应的目标流量分配比例。
步骤603、基于目标流量分配比例,创建或更新目标资源池。
可选的,管理服务器在获取到目标流量分配比例后,可以基于设定数值和目标流量分配比值,确定各类型云设备相对应的数量。管理服务器生成目标资源池,该目标资源池包括对应数量的各类型云设备。其中,若管理服务器在已创建目标资源池后,监听到配置文件中目标流量分配比例发生修改,则管理服务器基于获取到的修改后的目标流量分配比例,更新目标资源池。示例的,在目标资源池为对应目标列表的情况下,管理服务器在获取到目标流量分配比例后,可以基于设定数值和目标流量分配比值,确定各类型云设备相对应的数量。生成目标资源池对应的目标列表,该目标列表中各列表项依次记录的各类型标识的数量与确定的对应类型的云设备的数量相同。
示例的,以云设备的类型为厂商类型为例,假设配置文件包括目标应用信息对应的厂商标识1对应的流量分配比值0.2以及厂商标识2对应的流量分配比值0.8,且设定数值为10。管理服务器在监听配置文件后,获取配置文件中目标应用信息对应的厂商标识1对应的流量分配比值0.2以及厂商标识2对应的流量分配比值0.8。获取厂商标识1对应的流量分配比值0.2与10的乘积结果2,以及厂商标识2对应的流量分配比值0.8与10的乘积结果8,确定厂商标识1的数量2,以及厂商标识2的数量为8。创建目标资源池,该目标资源池内包括8个厂商1的云设备以及8个厂商2的云设备。
本发明实施例中,管理服务器可以基于配置文件,获取到各应用信息对应的流量分配比例。从而根据各应用信息对应的流量分配比例,可以同时执行创建或更新各应用信息对应的资源池。其中,管理服务器对基于任意一个应用信息对应的流量分配比例,创建或更新该应用信息对应的资源池的过程可以参考管理服务器基于目标流量分配比例,创建或更新目标资源池的过程,本发明实施例对此不做赘述。相应的,管理服务器在创建完成或更新完成各应用信息对应的资源池后,可以存储资源池与应用信息的对应关系,以便于后续根据该对应关系,确定目标应用信息对应的目标资源池。
示例的,在目标资源池为对应目标列表的情况下,管理服务器在获取到各应用信息对应的流量分配比例后,可以基于设定数值和各流量分配比值,确定各应用信息对应的各类型云设备相对应的数量。生成各应用信息对应的目标列表。管理服务器可以存储列表与应用信息的对应关系,以便于后续根据该对应关系,确定目标应用信息对应的目标列表。在一种可选的实现方式中,管理服务器在生成各应用信息对应的目标列表后,可以将生成多个第三键值对,各第三键值对的键域用于存储应用信息,第三键值对的值域可以用于存储列表。
本发明实施例提供的流量控制方法,在接收来自于终端发送的携带有目标应用信息的应用运行请求后,可以通过在目标应用信息对应的目标资源池内,基于当前轮询周期确定目标云设备。从而控制目标云设备响应应用运行请求。其中,在任意一个轮询周期中,目标资源池中各类型云设备的数量比例满足目标流量分配比例。该目标流量分配比例为目标应用信息对应的流量分配比例。该技术方案中,由于一个轮询周期内,用于确定响应应用运行请求的目标云设备的目标资源池中,各类型云设备的数量比例满足不同类型的云设备的目标流量分配比例。因此,在一个轮询周期内,从目标资源池内直接获取的响应不同终端发送的应用运行请求的各目标云设备中,不同类型的云设备的数量比例满足目标流量比例。因而,高效地实现了按照不同类型的云设备的目标流量分配比例将流量分配至不同类型的云设备,完成流量向不同类型的云设备的分配控制。在云设备的类型包括厂商类型的情况下,该技术方案实现了流量向厂商的分配控制,增强了与各个云设备厂商的合作紧密性,提供了更多的业务合作的机遇。
为了便于理解,在图2所示的实施环境下,以下述示例对本发明实施例提供的流量控制方法进行进一步说明。下述示例的,以云设备的类型指的是厂商类型、云设备为云手机、云应用为云游戏以及应用信息包括应用标识以及应用入口类型标识为例进行说明。
管理服务器获取配置中心存储的配置文件。根据配置文件确定各应用信息对应的流量分配比例。针对任意一个应用信息,管理服务器采用运行的调度模型,按照该应用信息对应的流量分配比例,将不同厂商的云手机添加至云手机资源池,以生成该应用信息对应的云手机资源池。管理服务器记录各应用信息与云手机资源池的对应关系。
游戏玩家通过终端通过云游戏网关向管理服务器发送应用运行请求。该应用运行请求携带有目标应用信息,该目标应用信息包括应用标识game1以及应用入口类型标识H5。管理服务器在接收到应用运行请求后,可以解析该应用运行请求,获取应用标识game1以及应用入口类型标识H5。并将应用标识game1以及应用入口类型标识H5进行拼接处理,得到目标信息game1_H5。管理服务器获取目标信息game1_H5对应的目标资源池内包括的多个云手机的类型标识。管理服务器从多个类型标识中,将当前轮询周期内未被轮询到的任一类型标识指示的类型作为目标类型。控制目标资源池内,目标类型的目标云手机响应终端发送的应用运行请求。云手机向终端发送云游戏渲染完成后的数据流,该数据流包括音频流、视频流或者指令流等。
综上所述,本发明实施例提供的流量控制方法,在接收来自于终端发送的携带有目标应用信息的应用运行请求后,可以通过在目标应用信息对应的目标资源池内,基于当前轮询周期确定目标云设备。从而控制目标云设备响应应用运行请求。其中,在任意一个轮询周期中,目标资源池中各类型云设备的数量比例满足目标流量分配比例。该目标流量分配比例为目标应用信息对应的流量分配比例。该技术方案中,由于一个轮询周期内,用于确定响应应用运行请求的目标云设备的目标资源池中,各类型云设备的数量比例满足不同类型的云设备的目标流量分配比例。因此,在一个轮询周期内,从目标资源池内直接获取的响应不同终端发送的应用运行请求的各目标云设备中,不同类型的云设备的数量比例满足目标流量比例。因而,高效地实现了按照不同类型的云设备的目标流量分配比例将流量分配至不同类型的云设备,完成流量向不同类型的云设备的分配控制。在云设备的类型包括厂商类型的情况下,该技术方案实现了流量向厂商的分配控制。
请参考图6,其示出了本发明实施例提供一种流量控制装置的流程图。如图6所示,流量控制装置700可以包括:接收模块701、确定模块702以及控制模块703。
接收模块701,用于接收终端发送的应用运行请求,应用运行请求携带目标应用信息;
确定模块702,用于在目标应用信息对应的目标资源池内,基于当前轮询周期确定目标云设备;在任意一个轮询周期中,目标资源池中各类型云设备的数量比例满足目标流量分配比例,目标流量分配比例为目标应用信息对应的流量分配比例;
控制模块703,用于控制目标云设备响应应用运行请求。
可选的,确定模块702,还用于:
从多个类型标识中,将当前轮询周期内未被轮询到的任一类型标识指示的类型作为目标类型;
在目标资源池的目标类型的云设备中,确定目标云设备。
可选的,确定模块702,还用于:
确定目标资源池在当前轮询周期内对应的目标列表;其中,目标列表中对应维护云设备与设备类型;
确定应用运行请求在目标列表中的目标索引;
将目标索引对应的云设备确定为目标云设备。
可选的,确定模块702,还用于:
采用目标列表的长度对总数量进行取余处理,得到目标索引;其中,总数量为当前轮询周期内接收到的目标应用运行请求的数量,目标应用运行请求携带目标应用信息;
或者,基于全局计数器确定目标索引,全局计数器用于在计数周期内对接收到的目标应用运行请求计数,计数周期与轮询周期对应。
可选的,目标应用信息包括:应用标识和/或应用入口类型标识。
可选的,在目标应用信息包括应用标识和应用入口类型标识的情况下,目标流量分配比例为目标信息对应的流量分配比例,目标信息为将应用标识和应用入口类型标识进行拼接处理后得到的信息。
可选的,装置还包括:监听模块、获取模块以及处理模块。
监听模块,用于监听配置文件;其中,配置文件用于描述应用信息与云设备的流量分配比例之间的配置关系;
获取模块,用于基于配置文件,获取目标流量分配比例;
处理模块,用于基于目标流量分配比例,创建或更新目标资源池。
可选的,配置文件包括:多个第一键值对,任一第一键值对的键域用于存储应用信息,第一键值对的值域用于存储一个或多个第二键值对,任一第二键值对的键域用于存储云设备的类型标识,第二键值对的值域用于存储对应类型的云设备的流量分配比例。
综上所述,本发明实施例提供的流量控制装置,在接收来自于终端发送的携带有目标应用信息的应用运行请求后,可以通过在目标应用信息对应的目标资源池内,基于当前轮询周期确定目标云设备。从而控制目标云设备响应应用运行请求。其中,在任意一个轮询周期中,目标资源池中各类型云设备的数量比例满足目标流量分配比例。该目标流量分配比例为目标应用信息对应的流量分配比例。该技术方案中,由于一个轮询周期内,用于确定响应应用运行请求的目标云设备的目标资源池中,各类型云设备的数量比例满足不同类型的云设备的目标流量分配比例。因此,在一个轮询周期内,从目标资源池内直接获取的响应不同终端发送的应用运行请求的各目标云设备中,不同类型的云设备的数量比例满足目标流量比例。因而,高效地实现了按照不同类型的云设备的目标流量分配比例将流量分配至不同类型的云设备,完成流量向不同类型的云设备的分配控制。在云设备的类型包括厂商类型的情况下,该技术方案实现了流量向厂商的分配控制。
本发明实施例还提供了一种电子设备,该电子设备可以为上述服务请求方。如图7所示,包括处理器801、通信接口802、存储器803和通信总线804,其中,处理器801,通信接口802,存储器803通过通信总线804完成相互间的通信,
存储器803,用于存放计算机程序;
处理器801,用于执行存储器803上所存放的程序时,实现如前述任一方法实施例所述的流量控制方法。
上述终端提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述终端与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一的流量控制方法。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一的流量控制方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本发明实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (9)

1.一种流量控制方法,其特征在于,包括:
接收终端发送的应用运行请求,所述应用运行请求携带目标应用信息;
在所述目标应用信息对应的目标资源池内,基于当前轮询周期确定目标云设备;在任意一个轮询周期中,所述目标资源池中各类型云设备的数量比例满足目标流量分配比例,所述目标流量分配比例为所述目标应用信息对应的流量分配比例;
控制所述目标云设备响应所述应用运行请求;
所述在所述目标应用信息对应的目标资源池内,基于当前轮询周期确定目标云设备,包括:
在所述目标应用信息对应的目标资源池内,将所述当前轮询周期内未被轮询到的一个云设备确定为目标云设备;
所述在所述目标应用信息对应的目标资源池内,将所述当前轮询周期内未被轮询到的一个云设备确定为目标云设备,包括:
从多个类型标识中,将当前轮询周期内未被轮询到的任一类型标识指示的类型作为目标类型,在所述目标资源池的所述目标类型的云设备中,确定所述目标云设备;
或者,
确定所述目标资源池在所述当前轮询周期内对应的目标列表;其中,所述目标列表中对应维护云设备与设备类型,确定所述应用运行请求在所述目标列表中的目标索引,将所述目标索引对应的云设备确定为所述目标云设备。
2.根据权利要求1所述的方法,其特征在于,所述确定所述应用运行请求在所述目标列表中的目标索引,包括:
采用所述目标列表的长度对总数量进行取余处理,得到所述目标索引;其中,所述总数量为当前轮询周期内接收到的目标应用运行请求的数量,所述目标应用运行请求携带所述目标应用信息;
或者,
基于全局计数器确定所述目标索引,所述全局计数器用于在计数周期内对接收到的所述目标应用运行请求计数,所述计数周期与所述轮询周期对应。
3.根据权利要求1所述的方法,其特征在于,所述目标应用信息包括:应用标识和/或应用入口类型标识。
4.根据权利要求3所述的方法,其特征在于,在所述目标应用信息包括应用标识和应用入口类型标识的情况下,所述目标流量分配比例为目标信息对应的流量分配比例,所述目标信息为将所述应用标识和所述应用入口类型标识进行拼接处理后得到的信息。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:
监听配置文件;其中,配置文件用于描述应用信息与云设备的流量分配比例之间的配置关系;
基于配置文件,获取所述目标流量分配比例;
基于所述目标流量分配比例,创建或更新所述目标资源池。
6.根据权利要求5所述的方法,其特征在于,所述配置文件包括:多个第一键值对,任一所述第一键值对的键域用于存储应用信息,所述第一键值对的值域用于存储一个或多个第二键值对,任一所述第二键值对的键域用于存储云设备的类型标识,所述第二键值对的值域用于存储对应类型的云设备的流量分配比例。
7.一种流量控制装置,其特征在于,包括:
接收模块,用于接收终端发送的应用运行请求,所述应用运行请求携带目标应用信息;
确定模块,用于在所述目标应用信息对应的目标资源池内,基于当前轮询周期确定目标云设备;在任意一个轮询周期中,所述目标资源池中各类型云设备的数量比例满足目标流量分配比例,所述目标流量分配比例为所述目标应用信息对应的流量分配比例;
控制模块,用于控制所述目标云设备响应所述应用运行请求;
所述确定模块,还用于在所述目标应用信息对应的目标资源池内,将所述当前轮询周期内未被轮询到的一个云设备确定为目标云设备;
所述确定模块,还用于从多个类型标识中,将当前轮询周期内未被轮询到的任一类型标识指示的类型作为目标类型;在目标资源池的目标类型的云设备中,确定目标云设备;
或者,
确定目标资源池在当前轮询周期内对应的目标列表;其中,目标列表中对应维护云设备与设备类型;确定应用运行请求在目标列表中的目标索引;将目标索引对应的云设备确定为目标云设备。
8.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-6任一所述的方法步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6中任一所述的方法。
CN202110745525.8A 2021-06-30 2021-06-30 流量控制方法、装置、电子设备及存储介质 Active CN113395291B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110745525.8A CN113395291B (zh) 2021-06-30 2021-06-30 流量控制方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110745525.8A CN113395291B (zh) 2021-06-30 2021-06-30 流量控制方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN113395291A CN113395291A (zh) 2021-09-14
CN113395291B true CN113395291B (zh) 2023-03-17

Family

ID=77624917

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110745525.8A Active CN113395291B (zh) 2021-06-30 2021-06-30 流量控制方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN113395291B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107135241A (zh) * 2016-02-26 2017-09-05 新华三技术有限公司 一种业务处理方法和装置
CN111078369A (zh) * 2019-12-27 2020-04-28 中国建设银行股份有限公司 一种云计算机下虚拟机分配方法、装置以及服务器

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108293041B (zh) * 2015-12-28 2020-10-09 华为技术有限公司 分布式系统、资源容器的分配方法、资源管理器及应用控制器
CN106101025A (zh) * 2016-05-19 2016-11-09 北京小米移动软件有限公司 流量分配方法及装置
US10609131B2 (en) * 2018-01-12 2020-03-31 Citrix Systems, Inc. Non-disruptive enablement of highly available cloud computing services
CN111930434B (zh) * 2020-05-29 2024-04-16 北京视博云信息技术有限公司 一种云应用的启动方法、装置、可读存储介质及设备
CN112422711B (zh) * 2020-11-06 2021-10-08 北京五八信息技术有限公司 一种资源分配方法、装置、电子设备及存储介质
CN112395086B (zh) * 2020-11-06 2022-03-08 北京五八信息技术有限公司 一种资源分配方法、装置、电子设备及存储介质
CN112764938B (zh) * 2021-02-02 2024-02-06 腾讯科技(深圳)有限公司 云服务器资源管理方法、装置、计算机设备和存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107135241A (zh) * 2016-02-26 2017-09-05 新华三技术有限公司 一种业务处理方法和装置
CN111078369A (zh) * 2019-12-27 2020-04-28 中国建设银行股份有限公司 一种云计算机下虚拟机分配方法、装置以及服务器

Also Published As

Publication number Publication date
CN113395291A (zh) 2021-09-14

Similar Documents

Publication Publication Date Title
JP7127010B2 (ja) リソースの割り当て方法、装置、電子設備、コンピュータ可読媒体およびコンピュータプログラム
JP6530462B2 (ja) コンピュータリソースサービスの性能能力の決定及び監視
CN108776934B (zh) 分布式数据计算方法、装置、计算机设备及可读存储介质
CN109032801B (zh) 一种请求调度方法、系统及电子设备和存储介质
US9432462B2 (en) Distributed metering and monitoring system
CN112583882A (zh) 用于管理边缘环境中的遥测数据的方法、系统、制品和装置
US10355934B2 (en) Vertical scaling of computing instances
US20140282626A1 (en) Processing of application programming interface traffic
US8429187B2 (en) Method and system for dynamically tagging metrics data
CN113127168A (zh) 服务分配方法、系统、装置、服务器及介质
WO2020164476A1 (zh) 数据下载的方法及相关装置
CN112965879A (zh) 数据处理方法、装置、电子设备及可读存储介质
WO2023174037A1 (zh) 资源调度方法、装置、系统、设备、介质和程序产品
CN110008050A (zh) 用于处理信息的方法和装置
US10936192B2 (en) System and method for event driven storage management
EP4007962A1 (en) Rights management of cloud resources
CN113395291B (zh) 流量控制方法、装置、电子设备及存储介质
CN110008261B (zh) 外部变化检测
KR101810180B1 (ko) 사용자 장치 기반의 빅데이터 분산 처리 방법 및 장치
CN116028696A (zh) 资源信息获取方法、装置、电子设备及存储介质
CN113271228B (zh) 带宽资源调度方法、装置、设备及计算机可读存储介质
CN114090201A (zh) 资源调度方法、装置、设备及存储介质
CN113391882A (zh) 虚拟机内存管理方法、装置、存储介质及电子设备
US20230136226A1 (en) Techniques for auto-tuning compute load resources
US20180077028A1 (en) Determining the quality of a capacity projection from a computing system capacity management product

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