CN113368494A - 云设备分配方法、装置、电子设备及存储介质 - Google Patents
云设备分配方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113368494A CN113368494A CN202110745571.8A CN202110745571A CN113368494A CN 113368494 A CN113368494 A CN 113368494A CN 202110745571 A CN202110745571 A CN 202110745571A CN 113368494 A CN113368494 A CN 113368494A
- Authority
- CN
- China
- Prior art keywords
- request
- queue
- cloud
- target
- application
- 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
- 238000000034 method Methods 0.000 title claims abstract description 106
- 230000004044 response Effects 0.000 claims description 36
- 238000012795 verification Methods 0.000 claims description 28
- 238000004891 communication Methods 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 8
- 238000007726 management method Methods 0.000 description 227
- 230000008569 process Effects 0.000 description 39
- 238000012545 processing Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000010200 validation analysis Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/33—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0844—Multiple simultaneous or quasi-simultaneous cache accessing
- G06F12/0853—Cache with multiport tag or data arrays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/40—Features 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/401—Secure communication, e.g. using encryption or authentication
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/40—Features 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/407—Data transfer via internet
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features 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/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/53—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
- A63F2300/534—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing for network load management, e.g. bandwidth optimization, latency reduction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例提供了一种云设备分配方法、装置、电子设备及存储介质。该云设备分配方法包括:接收来自于终端的应用运行请求;当云设备系统中无可分配云设备时,将所述应用运行请求对应的请求标识添加到缓存队列;当再次检测到所述云设备系统中存在可分配云设备时,基于所述缓存队列中各请求标识的队列顺序,确定目标运行请求;控制所述可分配云设备响应所述目标运行请求。本发明优化了云应用的启动运行方式,提升了云应用的启动运行方式的便捷性。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种云设备分配方法、装置、电子设备及存储介质。
背景技术
云游戏是以云计算为基础的游戏方式。在云游戏的运行模式下,所有游戏都在业务服务器虚拟出的诸如云手机的云设备运行。终端可以通过向管理服务器请求分配云设备运行云游戏,以在成功请求分配到云设备后,从管理服务器分配的运行有云游戏的云设备接收渲染后的游戏画面和音频压缩。并且终端可以将其接收到的用户输入的操作指令发送至云设备,使得云设备可以基于操作指令控制游戏运行,实现游戏的交互。
目前,管理服务器在接收到终端发送的云游戏运行请求后,可以在检测到其管理的云设备均处于不可分配状态时,向终端响应无资源信息,以提醒用户当前无法分配到云设备以运行云游戏。用户可以在间隔一段时长后,再次通过终端向管理服务器发送的云游戏运行请求,若再次检测到其管理的云设备均处于不可分配状态,则管理服务器向终端依旧响应无资源信息。此时,用户可以在间隔一段时长后,再次通过终端向管理服务器发送的云游戏运行请求,直至管理服务器检测到其管理的云设备存在可分配云设备,控制该可分配云设备响应云游戏运行请求。
然而,由于用户无法感知存在可分配云设备的时机,因此,用户可能需要通过多次发送云游戏运行请求的方式,以请求分配到云设备,实现云游戏的运行。因而,目前云游戏的启动运行方式较为不便。
发明内容
本发明实施例的目的在于提供一种云设备分配方法、装置、电子设备及存储介质,以在一定程度上优化云应用的启动运行方式,提升云应用的启动运行方式的便捷性。具体技术方案如下:
在本发明实施的第一方面,提供了一种云设备分配方法,包括:
接收来自于终端的应用运行请求;
当云设备系统中无可分配云设备时,将所述应用运行请求对应的请求标识添加到缓存队列;
当再次检测到所述云设备系统中存在可分配云设备时,基于所述缓存队列中各请求标识的队列顺序,确定目标运行请求;
控制所述可分配云设备响应所述目标运行请求。
在本发明实施的第二方面,还提供了一种云设备分配装置,包括:
接收模块,用于接收来自于终端的应用运行请求;
添加模块,用于当云设备系统中无可分配云设备时,将所述应用运行请求对应的请求标识添加到缓存队列;
确定模块,用于当再次检测到所述云设备系统中存在可分配云设备时,基于所述缓存队列中各请求标识的队列顺序,确定目标运行请求;
控制模块,用于控制所述可分配云设备响应所述目标运行请求。
在本发明实施的第三方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一所述的方法步骤。
在本发明实施的第四方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一所述的云设备分配方法。
在本发明实施的第五方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的云设备分配方法。
本发明实施例提供的云设备分配方法、装置、电子设备及存储介质,在接收到来自于终端的应用运行请求后,可以检测云设备系统中是否存在可分配云设备。当云设备系统中无可分配云设备时,将应用运行请求对应的请求标识添加到缓存队列。当再次检测到云设备系统中存在可分配云设备时,基于缓存队列中各请求标识的队列顺序,确定目标运行请求。并控制可分配云设备响应目标运行请求,实现云应用的运行。该技术方案中,由于管理服务器可以在云设备系统中无可分配云设备的情况下,将接收到的应用运行请求对应的请求标识存储至缓存队列。并在再次检测到云设备系统中存在可分配云设备的情况下,基于各请求标识的队列顺序,依次为缓存队列中对应的应用运行请求分配可分配云设备。因此,用户在想要运行某云应用时,可以仅发送一次应用运行请求,等待为其分配云设备即可。无需反复发送应用运行请求以请求分配云设备,优化了云应用的启动运行方式,提升了云应用的启动运行方式的便捷性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1为本发明实施例提供的一种云设备系统的结构示意图;
图2为本发明实施例提供的一种云设备分配方法的流程图;
图3为本发明实施例提供的一种目标运行请求响应方法的流程图;
图4为本发明实施例提供的另一种云设备分配方法的流程图;
图5为本发明实施例提供的又一种云设备分配方法的原理流程图;
图6为本发明实施例提供的再一种云设备分配方法的原理流程图;
图7为本发明实施例提供的一种云设备分配装置的框图;
图8为本发明实施例提供的一种电子设备的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
请参考图1,其示出了本发明实施例提供的一种云设备系统的结构示意图。如图1所示,云设备系统100包括:管理服务器101以及至少一个云设备102。管理服务器101与各云设备102之间通过网络连接。可选的,该网络可以是无线网络(wireless network)。该无线网络可以包括:无线保真网络、第三代(3rd-generation,3G)移动通信技术网络或通用分组无线服务技术(general packetradio service,GPRS)等。需要说明的是,图1以云设备系统包括三个云设备(102A-102C)为例进行说明,图1中云设备的数量并不对云设备系统中可包括的云设备的数量进行限定。
其中,云设备102可以是虚拟设备,也可以是实体设备。示例性的,云设备102可以是通过虚拟技术在云服务器上虚拟出的逻辑设备。具体而言,任意一台云服务器上可以虚拟出多台逻辑设备。则图1所示的云设备系统所包括的各云设备102可以是相同或者不同的云服务器上虚拟出的逻辑设备。可选地,云服务器可以是部署于不同地域的云服务器,则相应的云设备可以具有地域属性。图1所示的云设备系统所包括的各云设备可以是同一地域或者不同地域的云设备。当云设备是实体设备时,其包括但不限于智能手机、平板电脑、膝上型便携计算机、台式计算机、服务器等。
在实践中,云设备可以通过安装云应用(也可称为云应用程序,云APP,云端应用等)来提供相应的网络服务,比如云设备通过安装云游戏应用来提供云游戏服务,也即云应用运行在云设备上。具体而言,任意一个云设备上可以运行一个或多个云应用;当安装有多个云应用时,不同云应用的应用标识一般不同。在一种可能的场景中,一个云设备中可以安装有应用标识相同或不同的多个云应用。其中,针对任意一种云应用,一个云设备在同一时间仅能运行一个云应用,即同一时间一个云设备仅能为一个终端提供该云应用相应的网络服务。因而,受限于云设备运行云应用时的独占能力,以及在云设备为虚拟设备时云服务器的虚拟云设备的能力,云设备资源较为宝贵。
用户可以通过终端实现与云设备的通信,从而使用安装于云设备的云应用。终端为实体设备,其可以是支持具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机、台式计算机等。在实践中,终端可以通过安装客户端应用来提供相应的网络服务,比如终端通过安装视频播放器来提供视频或图像播放服务。
作为一个实施例,云设备与终端通过云端通信模块建立通信连接。可选的,云端通信模块可内置于云设备或者独立于云设备,可用于实现云设备上的一个或多个云应用与其对应的终端之间的通信连接,和/或用于实现一个或多个云设备与其对应的终端之间的通信连接。上述所说的模块是广义的,可以是类、函数、线程、进程等,示例性的,云端通信模块可以为云应用服务程序。
在图1所示例的云设备系统中,一方面,云设备用于运行云应用,并向终端发送运行云应用时的数据流,终端则用于展示接收到的数据流。另一方面,终端用于采集用户的操作数据,并向云设备发送操作数据(采集到的操作数据或处理后的操作数据),云设备则基于接收到的操作数据对用户操作进行响应,并继续向终端发送响应数据流,终端则继续展示接收到的响应数据流。如此,云设备与终端形成闭环,用户可以通过终端来使用云设备上安装的云应用。由于云应用实际并不运行在终端中,因此有利于降低终端的运行资源。
管理服务器101可以用于为终端分配为其提供云应用相应的网络服务的云设备。可选的,管理服务器102可以包括分布式数据库,或者管理服务器可以连接有分布式数据库。该分布式数据库可以用于存储云设备的设备信息和/或云设备安装的应用的应用信息。示例的,分布式数据库可以为Redis。Redis为一个高性能的关键字-数值(key-value)类型的分布式数据库。该分布式数据库为一个单线程运行的数据库,其可以将并发请求串行化。Redis具有原子操作特性,可以取代相关技术中云设备数据库的读写锁机制。
本发明实施例中,以云设备安装的应用为云游戏,云设备为云手机为例。在管理服务器将一个运行有云游戏的云手机分配给终端后,该云手机向终端发送云游戏渲染完成后包括游戏画面和音频的游戏视频流,终端则可通过客户端应用,比如视频播放器展示接收到的视频流。进一步,终端每采集到一次用户的操作数据,则向云手机发送操作数据,云手机则基于接收到的操作数据进行响应并刷新视频流,以及向终端发送刷新后的视频流,如此则可实现用户通过终端来使用云手机上安装的云游戏。
可以理解的是,图1中的网络和设备的数目仅是示意。根据实际需要,云设备系统可以包括任意数目的网络和设备,本发明对此不做限制。
请参考图2,其示出了本发明实施例提供的一种云设备分配方法的流程图。该云设备分配方法可以应用于如图1所示的云设备系统,由该云设备系统中的管理服务器执行。如图2所示,云设备分配方法包括:
步骤201、接收来自于终端的应用运行请求。
本发明实施例中,用户在想要运行某款目标云应用时,可以通过终端上安装的客户端应用所对应的应用标识执行设定输入。终端在接收到针对该应用标识的设定输入后,可以响应于该设定输入,向管理服务器发送应用运行请求,以使得管理服务器可以接收来自于终端的应用运行请求。管理服务器在接收到来自于终端的应用运行请求后,可以执行后续为该终端分配云设备的过程。其中,针对应用标识的设定操作可以包括但不限于:点击操作、长按操作、滑动操作、触控操作或语音控制操作等,此处不作穷举。
可选的,管理服务器接收来自于终端的应用运行请求可以包括:目标应用标识,该目标应用标识用于指示目标云应用。目标云应用即为用户想要进入的云应用。可选的,应用标识可以为云应用的身份标识号(Identity document,ID),其用于唯一标识云应用。除此之外,应用标识还可以为应用名称等,此处无特别限制。
步骤202、当云设备系统中无可分配云设备时,将应用运行请求对应的请求标识添加到缓存队列。
本发明实施例中,管理服务器在接收到来自终端的应用运行请求后,可以检测当前云设备系统中是否存在可分配云设备。该可分配云设备可以指的是未分配终端,且未运行有云应用的云设备。更进一步的,在部分可能的实施例中,可分配云设备还可以是当前并未运行有目标云应用的云设备,该云设备可能已经为其他终端提供了其他云应用的网络服务。
当检测到云设备系统中无可分配云设备时,表明当前云设备系统无响应终端的云设备资源,则管理服务器可以将该终端发送的应用运行请求对应的请求标识添加至缓存队列。请求标识用于唯一指示应用运行请求。例如,该请求标识可以是应用运行请求中携带的一段特殊字符;或者,该请求标识可以为根据终端的地址和/或终端对应用户的账号信息生成的字符。
反之,当检测到云设备系统中存在可分配云设备时,表明当前云设备系统存在响应终端的云设备资源,则管理服务器可以控制可分配云设备响应目标运行请求。目标运行请求的确定方式,详见后文,此处暂不展开。
可选的,管理服务器可以包括云设备存储空间。该云设备存储空间可以用于存储可分配云设备对应的设备标识。则管理服务器检测当前云设备系统中是否存在可分配云设备的过程可以包括:管理服务器判断云设备存储空间是否为空。当云设备存储空间为空时,表明云设备系统中无可分配云设备。当云设备存储空间不为空时,表明云设备系统中存在可分配云设备。其中,云设备存储空间可以为云设备可用队列、云设备可用集合、云设备可用资源池。
或者,云设备系统中可以维护有各云设备的设备状态。该设备状态可以包括但不限于空闲状态。其中,空闲状态用于表明对应的云设备为可分配云设备。除此之外,设备状态还可以有其他状态,后文详述。管理服务器可以存储有云设备管理列表,该云设备管理列表中记录有云设备系统中各云设备的设备状态。则管理服务器检测当前云设备系统中是否存在可分配云设备的过程可以包括:管理服务器可以依次判断云设备管理列表中各云设备的设备状态。当各设备状态不存在空闲状态时,表明云设备系统中无可分配云设备。当各设备状态存在空闲状态时,表明云设备系统中存在可分配云设备。
或者,管理服务器可以包括云设备可用队列,且云设备系统中各云设备可以具有设备状态。则管理服务器检测当前云设备系统中是否存在可分配云设备的过程可以包括:管理服务器可以判断云设备可用队列是否为空,以及判断云设备可用队列中各云设备的设备状态。当云设备可用队列为空时,表明云设备系统中无可分配云设备。当云设备可用队列不为空,且云设备可用队列中各设备状态存在空闲状态时,表明云设备系统中存在可分配云设备。
需要说明的是,管理服务器还可以通过其他方式表征云设备系统中是否存在可分配云设备,本发明实施例对此不作限定。
步骤203、当再次检测到云设备系统中存在可分配云设备时,基于缓存队列中各请求标识的队列顺序,确定目标运行请求。
本发明实施例中,管理服务器可以在将应用运行请求对应的请求标识添加到缓存队列之后,持续检测云设备系统中是否存在可分配云设备。例如,周期性检测,或者定时检测,或者持续性监测,云设备系统中是否存在可分配云设备。当再次检测到云设备系统中存在可分配云设备时,表明当前云设备系统存在响应终端的云设备资源,则可以基于缓存队列中各请求标识的队列顺序,确定目标运行请求。
在周期性监测是否存在可分配云设备的场景中,当再次检测到云设备系统中不存在可分配云设备时,表明当前云设备系统无响应终端的云设备资源,则管理服务器可以不执行操作,等待下次检测周期到来。其中,管理服务器检测云设备系统中是否存在可分配云设备的过程可以参考前述步骤202中的相关解释和实现方式,在此不再赘述。
可选地,管理服务器基于缓存队列中各请求标识的队列顺序,确定目标运行请求的过程可以包括:管理服务器可以按照缓存队列中各请求标识的队列顺序,将最先添加至缓存队列中的请求标识指示的应用运行请求作为目标运行请求。示例的,缓存队列中各请求标识按照请求标识的存储时刻排序。缓存队列中各请求标识的队列顺序为请求标识的存储时刻由早到晚的顺序。则管理服务器可以将队列顺序中,位于首位的请求标识指示的应用运行请求作为目标运行请求。或者,缓存队列中各请求标识的队列顺序为请求标识的存储时刻由晚到早的顺序。则管理服务器可以将队列顺序中,位于未位的请求标识指示的应用运行请求作为目标运行请求。换言之,缓存队列按照早添加早处理的方式来确定目标运行请求。
需要说明的是,管理服务器不仅可以基于缓存队列中各请求标识的队列顺序确定目标运行请求,还可以在缓存队列中各请求标识的队列顺序的基础上,结合其他因素共同确定目标运行请求。该其他因素的内容可见后文示意说明。
在一种可选的实现方式中,缓存队列可以为Redis队列。Redis为一种键值对存储数据库,该Redis还可以为集群模式。其中,Redis队列的数据结构可以为有序集合(SortedSet,Zset)。Redis有序集合中每个元素均不同,且每个元素均关联有一个分数(score)。Redis有序集合中各元素可以基于各元素对应关联的分数大小进行排列。数据结构为Zset的Redis队列指的是将数据结构为Zset的Redis用作队列使用。本发明实施例中,Redis有序集合中各元素关联的分数可以为该元素添加至Redis队列的存储时刻。例如,分数可以为xx年xx月xx日xx时xx分xx秒,则分数大小可以指的是存储时刻相较于管理服务器的当前时刻的早晚程度。存储时刻相较于当前时刻越远,则分数越小。即存储至Redis队列中的请求标识可以与其进入Redis队列存储空间的存储时刻关联,Redis队列中各请求标识可以按照请求标识的存储时刻排序。
本发明实施例中,在缓存队列为Redis队列的情况下,由于缓存队列可以是Redis封装的队列,而Redis本身支持高可用处理和高并发处理,具有较高的性能。因而,基于缓存队列进行请求标识的写入和读出处理,也具有较高的处理效率。并且在Redis的数据结构为Redis有序集合时,由于有序集合中各元素对应的分数为请求标识的存储时刻,因而高效地保证了请求标识先进先出的顺序。且无需单独记录各请求标识对应的存储时刻,且无需在基于缓存队列中各请求标识的队列顺序,确定目标运行请求时,基于各请求标识的存储时刻与当前时刻进行计算。从而降低了从缓存队列确定目标运行请求这一算法过程的时间复杂度和空间复杂度,节省了存储空间,提高了从缓存队列中确定目标运行请求的效率。并且,Redis有序集合数据结构具有各元素不重复性,保证了缓存队列中不会重复出现同一终端的设备标识,避免了同一终端重复排队等待。
步骤204、控制可分配云设备响应目标运行请求。
本发明实施例中,管理服务器可以控制可分配云设备运行目标应用请求对应的目标应用,并将运行目标应用过程中生成的视频流发送至目标终端。以控制目标云设备响应应用运行请求,为目标终端提供目标应用对应的网络服务。其中目标终端为目标运行请求的发送终端。
本发明实施例提供的云设备分配方法,在接收到来自于终端的应用运行请求后,可以检测云设备系统中是否存在可分配云设备。当云设备系统中无可分配云设备时,将应用运行请求对应的请求标识添加到缓存队列。当再次检测到云设备系统中存在可分配云设备时,基于缓存队列中各请求标识的队列顺序,确定目标运行请求。并控制可分配云设备响应目标运行请求,实现云应用的运行。该技术方案中,由于管理服务器可以在云设备系统中无可分配云设备的情况下,将接收到的应用运行请求对应的请求标识存储至缓存队列。并在再次检测到云设备系统中存在可分配云设备的情况下,基于各请求标识的队列顺序,依次为缓存队列中对应的应用运行请求分配可分配云设备。因此,用户在想要运行某云应用时,可以仅发送一次应用运行请求,等待为其分配云设备即可。无需反复发送应用运行请求以请求分配云设备,优化了云应用的启动运行方式,提升了云应用的启动运行方式的便捷性。
基于如图2所示的实施例,以下具体说明步骤203的一种可能的实现方式。
具体而言,在步骤203中,当再次检测到云设备系统中存在可分配云设备时,管理服务器基于缓存队列中各请求标识的队列顺序,确定目标运行请求。如前所述,管理服务器在基于缓存队列中各请求标识的队列顺序的基础上,还可以结合其他因素共同确定目标运行请求。示例的,应用运行请求对应有优先级。该其他因素可以包括但不限于:应用运行请求的优先级。该优先级用于描述应用运行请求的发送端的用户等级。例如,在一种云游戏场景中,用户包括普通用户和会员用户。会员用户的等级高于普通用户的等级。则会员用户的终端发送的应用运行请求对应的优先级高于普通用户发送的应用运行请求对应的优先级。
可选的,管理服务器基于缓存队列中各请求标识的队列顺序,确定目标请求标识的过程可以包括:管理服务器基于缓存队列中各请求标识对应的优先级,以及缓存队列中各请求标识的队列顺序,确定目标运行请求。
本发明实施例中,缓存队列的数量的可以为一个或多个。在缓存队列的数量为一个的情况下,可选地,管理服务器基于缓存队列中各请求标识对应的优先级,以及缓存队列中各请求标识的队列顺序,确定目标运行请求的过程可以包括:管理服务器按照缓存队列中优先级由高到低的顺序,以及缓存队列中各请求标识由前到后的队列顺序,确定目标运行请求。
在一种示例的,管理服务器基于缓存队列中各请求标识对应的优先级,以及缓存队列中各请求标识的队列顺序,确定目标运行请求的过程可以包括:管理服务器将缓存队列中优先级最高的至少一个请求标识中,按照各请求标识由前到后的队列顺序,确定目标运行请求。例如,缓存队列中包括:请求标识A、请求标识B以及请求标识C。其中,请求标识A的优先级和请求标识B的优先级相等,且均大于请求标识C的优先级。管理服务器将缓存队列中优先级最高的请求标识A和请求标识B中,队列顺序靠前的请求标识A指示的应用运行请求作为目标运行请求。
在另一种示例的,管理服务器基于缓存队列中各请求标识对应的优先级,以及缓存队列中各请求标识的队列顺序,确定目标运行请求的过程可以包括:管理服务器基于缓存队列中各请求标识对应的优先级,将缓存队列中各请求标识的队列顺序进行调整。并基于调整后的队列顺序确定目标运行请求。例如,管理服务器基于缓存队列中各请求标识对应的优先级由高到低的顺序,将缓存队列中各请求标识的队列顺序进行调整。并将调整后的队列顺序中位于首位的请求标识指示的应用运行请求作为目标运行请求。
在又一种示例的,管理服务器基于缓存队列中各请求标识对应的优先级,以及缓存队列中各请求标识的队列顺序,确定目标运行请求的过程可以包括:管理服务器将缓存队列中位于队列顺序前指定数量个请求标识中,按照优先级由高到低的顺序,确定目标运行请求。例如,缓存队列中包括:请求标识A、请求标识B以及请求标识C。其中,请求标识B的优先级大于和请求标识C的优先级相等,且均大于请求标识A的优先级。请求标识添加至缓存队列的时刻由早到晚的排序依次为请求标识A、请求标识B以及请求标识C,即缓存队列的队列顺序为请求标识A、请求标识B以及请求标识C。假设指定数量为2,则管理服务器将缓存队列中位于队列顺序前2个请求标识,即请求标识A、请求标识B中,优先级最高的请求标识B指示的应用运行请求作为目标运行请求。
可选的,在缓存队列的数量为多个的情况下,即缓存队列可以包括多个缓存队列。此时,可以为多个缓存队列进行优先级的排序,从而,按照各缓存队列的优先级确定目标队列,进而,按照目标队列的队列顺序确定目标云设备。
示例性的,以两个缓存队列的场景为例。多个缓存队列可以包括:第一队列与第二队列。其中,第一队列中任意一个请求标识对应的优先级,高于第二队列中任意一个请求标识对应的优先级。管理服务器基于缓存队列中各请求标识对应的优先级,以及缓存队列中各请求标识的队列顺序,确定目标运行请求的过程可以包括:当第一队列不为空时,管理服务器在第一队列中基于各请求标识的队列顺序,确定目标运行请求。或者,当第一队列为空时,管理服务器在第二队列中基于各请求标识的队列顺序,确定目标运行请求。其中,管理服务器在第一队列不为空的情况下,在第一队列中基于各请求标识的队列顺序确定目标运行请求的过程可以参考前述实施例步骤203中,管理服务器基于缓存队列中各请求标识的队列顺序,确定目标运行请求的过程。类似的,管理服务器在第一队列为空的情况下,在第二队列中基于各请求标识的队列顺序确定目标运行请求的过程可以参考前述实施例步骤203中,管理服务器基于缓存队列中各请求标识的队列顺序,确定目标运行请求的过程。本发明实施例对此不做赘述。
需要说明的是,前述第一队列和第二队列并不能限定缓存队列的数量。在缓存队列的数量为多个时,任一缓存队列中各请求标识对应的优先级可以均相等,或者,各请求标识对应的优先级可以不等。当任一缓存队列中包括多个优先级的请求标识时,针对任一缓存队列,管理服务器在缓存队列中基于各请求标识的队列顺序,确定目标运行请求的过程可以包括:管理服务器在缓存队列中基于各请求标识的队列顺序,以及各请求标识对应的优先级确定目标运行请求。该具体解释和实现方式可以参考前述在缓存队列为一个的情况下,管理服务器确定目标运行请求的解释和实现方式,本发明实施例对此不再赘述。
可选的,管理服务器控制可分配云设备响应目标运行请求的过程可以包括:
步骤401、管理服务器从可分配云设备中确定目标云设备。
本发明实施例中,管理服务器可以将可分配云设备中任意一个云设备确定为目标云设备。或者,管理服务器可以将可分配云设备中,特定云设备确定为目标云设备。其中,特定云设备可以为与目标应用请求对应的目标应用的特定属性对应的云设备。例如,应用运行时所需运存越大,其对应的可分配云设备的运存越大;应用存储规格越大,其对应的可分配云设备的中央处理器的运算能力越强。
步骤402、管理服务器将匹配信息添加至就绪队列。匹配信息包括以下至少一项:目标云设备的设备标识、目标终端的终端标识。
本发明实施例中,就绪队列用于存储为已分配终端的云设备的相关信息。管理服务器在确定目标运行请求对应的目标云设备后,将目标运行请求对应的匹配信息添加至就绪队列。该就绪队列可以包括以下至少一项:目标云设备的设备标识、目标终端的终端标识。其中,目标终端为目标运行请求的发送终端。目标终端的终端标识可以是应用运行请求中携带的。可选地,管理服务器可以在将目标运行请求对应的匹配添加至就绪队列后,删除等候队列中目标运行请求对应的请求标识。
步骤403、管理服务器向目标终端发送匹配成功消息,匹配成功消息用于提示目标终端向管理服务器发送进入应用请求。
本发明实施例中,管理服务器可以在确定目标云设备后,向目标终端发送匹配成功消息,以使得目标终端显示匹配成功消息,从而提醒用户当前成功为终端分配到云设备,可以运行目标应用。
可选的,目标终端在接收到匹配成功消息后,可以针对匹配成功消息执行进入应用操作,从而响应于该进入应用操作,向管理服务器发送进入应用请求。示例的,匹配成功消息可以包括但不限于“已排到成功”字样以及确认进入图标。目标终端在接收到管理服务器发送的匹配成功消息后,可以显示该匹配成功消息。用户可以点击匹配成功消息中确定进入图标,以使得终端响应于针对确定进入图标的点击操作,向管理服务器发送进入应用请求。
本发明实施例中,管理服务器通过设定途径向目标终端发送匹配成功消息。例如,管理服务器可以通过目标终端对应的移动通信地址向目标终端发送短信,该短信的内容包括匹配成功消息。或者,管理服务器可以通过终端对应的邮件地址向目标终端发送邮件,邮件的内容包括匹配成功消息。或者,管理服务器可以通过终端对应的即时通讯地址向目标终端发送即时通讯消息,该即时通讯消息包括匹配成功消息。
步骤404、管理服务器判断设定时长内是否接收到来自于目标终端的进入应用请求。若是,执行步骤405;若否,执行步骤406。
可选的,管理服务器可以从发送匹配成功消息的时刻开始,启动计时功能。管理服务器可以在接收到来自于目标终端的进入应用请求之前,周期性地比较计时时长与设定时长的大小。当计时时长小于或者等于设定时长时,表明管理服务器在设定时长内接收到了来自于目标终端的进入应用请求。当计时时长大于设定时长时,表明管理服务器在设定时长内未接收到来自于目标终端的进入应用请求。
或者,管理服务器可以从发送匹配成功消息的时刻开始,启动从设定时长开始的倒计时功能。管理服务器可以在接收到来自于目标终端的进入应用请求之前,周期性地比较计时时长与零的大小。当计时时长大于零时,表明管理服务器在设定时长内接收到了来自于目标终端的进入应用请求。当计时时长等于零时,表明管理服务器在设定时长内未接收到来自于目标终端的进入应用请求。
或者,管理服务器可以记录向目标终端发送匹配成功消息的发送时刻。管理服务器可以在收到来自于目标终端的进入应用请求之前,周期性的获取管理服务器的当前时刻以及该发送时刻。计算当前时刻与发送时刻之间的等待时长。在等待时长小于或者等于设定时长时,表明管理服务器在设定时长内接收到了来自于目标终端的进入应用请求。在等待时长大于设定时长时,表明管理服务器在设定时长内未接收到来自于目标终端的进入应用请求。其中,设定时长可以为1分钟、3分钟或者5分钟等。
步骤405、管理服务器控制目标云设备响应目标运行请求。
本发明实施例中,当设定时长内接收到来自于目标终端的进入应用请求时,管理服务器控制目标云设备响应目标运行请求。可选的,管理服务器可以控制可分配云设备运行目标应用请求对应的目标应用,并将运行目标应用过程中生成的视频流发送至目标终端。以控制目标云设备响应应用运行请求,为目标终端提供目标应用对应的网络服务。
步骤406、管理服务器从就绪队列中移除匹配信息,并重新确定目标运行请求。
本发明实施例中,当设定时长内未接收到来自于目标终端的进入应用请求时,管理服务器可以删除就绪队列中存储的目标运行请求对应的匹配信息,并重新确定目标运行请求。其中,管理服务器从就绪队列中删除存储的目标运行请求对应的匹配信息后,目标运行请求对应的目标云设备被释放,即该目标云设备更新为可分配设备,管理服务器可以重新为该目标云设备分配另一终端,以使得目标云设备响应另一终端发送的应用运行请求。此时,云设备系统中存在可分配云设备,管理服务器可以重新确定目标运行请求。可选的,在管理服务器包括前述用于存储可分配云设备的设备标识的云设备可用队列时,管理服务器将匹配信息从就绪队列移除后,将目标云设备对应的设备标识添加至云设备可用队列。以便于管理服务器检测到云设备可用队列不为空,为另一终端分配设备标识对应的目标云设备。
示例的,在管理服务器从就绪队列中移除匹配信息之后,若管理服务器未接收到新的终端发送的应用运行请求,则重新确定目标运行请求的过程可以包括:管理服务器基于缓存队列中各请求标识的队列顺序,确定目标运行请求。若管理服务器接收到来自新的终端发送的应用运行请求,则重新确定目标运行请求,后文详述。
本发明实施例中,通过建立排队超时机制,使得在设定时长内未接收到来自于目标终端的进入应用请求的情况下,管理服务器从就绪队列中移除匹配信息,并重新确定目标运行请求。避免了因目标终端所属的用户一直不响应匹配成功消息,而造成的管理服务器一直为该目标终端保留目标云设备。避免了目标云设备较长时间的无效占用,进而避免了云设备资源的无效浪费,以及较多目标云设备因长时间的无效占用导致的云设备资源的快速耗尽,造成云设备系统故障。提高了云设备的分配效率。
可选的,管理服务器可以在将应用运行请求对应的请求标识添加至缓存队列后,向终端发送排队等待消息。终端在接收到排队等待消息后可以对该排队等待消息进行显示,以提醒用户进入等待状态。在一种可选的实现方式中,排队等待消息可以包括:排队人数。该排队人数用于表示缓存队列中存储时刻早于目标存储时刻的设备标识的数量,目标存储时刻为来源于终端的应用运行请求对应的请求标识的存储时刻。则管理服务器计算排队人数,即可以认为管理服务器计算缓存队列中,存储时刻早于目标存储时刻的设备标识的数量。则管理服务器向终端发送排队等待消息之前,所述方法还包括:管理服务器可以基于缓存队列中各请求标识的队列顺序,确定排队人数。
示例的,在缓存队列内存储的请求标识可以按照请求标识的存储时刻由早到晚的顺序排列的情况下,管理服务器获取缓存队列包括的各请求标识中,位于来自于终端的应用运行请求对应的请求标识之前的请求标识的数量,将该请求标识的数量确定为排队人数。例如,假设缓存队列包括按照存储时刻由早到晚的顺序排列的设备标识依次为第一请求标识、第二请求标识以及第三请求标识。且假设终端发送应用运行请求对应的请求标识为第三请求标识。则管理服务器获取位于第三请求标识之前的请求标识的数量为2,确定排队人数为2。
又一示例的,在缓存队列为Redis队列,且Redis的数据结构为Redis有序集合时,由于有序集合中各元素的分数为存储时刻,因此管理服务器可以基于缓存队列中各请求标识的存储时刻的排序结果,确定排队人数的过程可以包括:管理服务器采用countForZSet方法,确定存储时刻早于目标存储时刻的请求标识的数量,即确定排队人数。例如,countForZSet方法可以用于对数据结构为Redis Zset的Redis队列调用执行opzForZSet方法中count方法,以在请求标识存储至缓存队列时,获取该Redis队列分数取值为[min,max]区间内的请求标识的数量。min表示分数的最小值,max表示分数的最大值。由于,在请求标识存储至缓存队列时,该请求标识对应的分数为该区间的一个端点,则countForZSet方法可以确定存储时刻早于目标存储时刻的请求标识的数量,即可以确定排队人数。countForZSet方法的时间复杂度为o(log(n)+m)。经过试验测得,当Redis队列的队列长度为100,0000时,计算未位请求标识对应的排队人数的耗时1毫秒(ms),性能较高。这样,管理服务器可以较为快速地确定终端对应的排队人数,提高排队等待消息的响应速度。
在一种实现方式中,本发明实施例提供的云设备分配方法还可以包括令牌机制。管理服务器可以为待添加至缓存队列中的应用运行请求分配目标验证令牌。该目标验证令牌可以与应用运行请求对应的请求标识关联存储至缓存队列中。例如,管理服务器可以将目标验证令牌与其对应的请求标识存储至缓存队列的同一存储位置。当缓存队列为Redis队列,管理服务器可以将目标验证令牌与其对应的请求标识认为为同一队列元素,存储至Redis队列。可选的,目标验证令牌的内容可以为管理服务器随机生成的数字,或者,目标验证令牌的内容可以为管理服务器基于终端的终端标识生成的信息。或者,目标验证令牌的内容可以为是随机生成的字符串。则管理服务器生成目标验证令牌的过程可以包括:管理服务器采用随机字符串生成器生成随机字符串,将生成的随机字符串确定为目标验证令牌。或者,目标验证令牌也可以是基于非对称加密算法确定的一对密钥(公开密钥和私有密钥)中的私有密钥。则管理服务器生成目标验证令牌的过程可以包括:管理服务器采用非对称加密算法生成的一对密钥。保存公开密钥,将私有密钥确定为目标验证令牌。在一种可选的方式中,匹配信息还可以包括目标运行请求对应的目标验证令牌。
本发明实施例中,排队等待消息中还可以包括:应用运行请求对应的目标验证令牌。相应的,目标终端在接收到管理服务器发送的匹配成功消息后,向管理服务器发送进入应用请求时,可以携带待验证令牌。以便于管理服务器基于进入应用请求携带的待验证令牌与目标终端对应的目标验证令牌的匹配度,判断发送进入应用请求的终端是否目标终端,实现对发送进入应用请求的终端的身份验证。从而防止其他用户顶替目标终端的用户,保证等待过程的公平性,提高用户体验。
则请参考图3,在步骤405之前,管理服务器控制可分配云设备响应目标运行请求的过程还可以包括:
步骤407、管理服务器获取进入应用请求中携带的待验证令牌。
本发明实施例中,当设定时长内接收到来自于目标终端的进入应用请求时,管理服务器可以解析接收到的进入应用请求,获取该进入应用请求中携带的待验证令牌。其中,该待验证令牌可以是目标终端基于接收到的目标验证令牌生成的。或者,该待验证令牌可以是用户输入的。
需要说明的是,在管理服务器控制可分配云设备响应目标运行请求的过程增加步骤407和步骤408的情况下,步骤404管理服务器判断设定时长内是否接收到来自于目标终端的进入应用请求。若是,执行步骤405;若否,执行步骤406中,在判断设定时长内接收到来自于目标终端的进入应用请求,即在判断结果为是的情况下,将执行步骤405替换为执行步骤407至步骤408。
步骤408、管理服务器判断待验证令牌与目标验证令牌是否匹配。若是,执行步骤405;若否,则执行步骤406。
本发明实施例中,管理服务器可以比较待验证令牌和目标验证令牌。在待验证令牌与目标验证令牌一致时,表明发送进入应用请求的终端为目标终端,则管理服务器控制目标云设备响应目标运行请求。当待验证令牌与目标验证令牌不一致时,表明发送进入应用请求的终端不是目标终端,此时认为目标终端的用户被顶替,则管理服务器从就绪队列中移除匹配信息,并重新确定目标运行请求。
本发明实施例中,通过建立令牌检测机制,使得管理服务器可以为添加至缓存队列的各请求标识指示的应用运行请求分配目标验证令牌。并向目标运行请求的发送终端发送该目标验证令牌。目标终端向管理服务器发送进入应用请求携带有待验证令牌,管理服务器可以基于进入应用请求携带的待验证令牌与目标终端对应的目标验证令牌的匹配度,判断发送进入应用请求的终端是否目标终端,实现对发送进入应用请求的终端的身份验证。从而防止其他用户顶替目标终端的用户,保证了排队等待过程的公平性,提高用户体验。
可选的,所述方法还包括:管理服务器可以根据目标云设备的设备标识与就绪队列的存储关系,更新目标云设备的设备状态。其中,设备状态包括:等待响应状态或者空闲状态。等待响应状态用于限制目标云设备的响应范围,更进一步的,等待响应状态用于限制目标云设备仅响应与之匹配的目标运行请求。处于空闲状态的云设备可以响应任意一个终端发送的应用运行请求。本发明实施例中,通过对云设备的设备状态添加等待响应状态,便于更为清晰地标识云设备不同的可响应范围。
示例的,管理服务器根据目标云设备与就绪队列的存储关系,更新目标云设备的设备状态的过程可以包括:当就绪队列中包含目标云设备的设备标识时,管理服务器控制目标云设备的设备状态为等待响应状态。当就绪队列中不包含目标云设备的设备标识时,管理服务器控制目标云设备的设备状态为空闲状态。需要说明的是,在将目标云设备存储至就绪队列之前,由于还未将目标云设备与目标运行请求的发送终端匹配,因此,目标云设备的设备状态可以为空闲状态。当将包括目标云设备的设备标识的匹配信息存储至就绪队列时,表明将目标云设备与目标运行请求的发送终端匹配,则管理服务器可以将目标云设备的设备状态更新为等待响应状态,以对目标云设备上锁,表明该目标云设备仅能响应目标运行请求,无法响应其他用户的终端发送的应用运行请求。当从就绪队列中删除包括目标云设备的设备标识的匹配信息时,表明将目标云设备与目标运行请求的发送终端解除匹配,此时该目标云设备可以响应于任意一个终端发送的应用运行请求。则管理服务器在从就绪队列中移除匹配信息之后,可以将目标云设备的设备标识更新为空闲状态。
本发明实施例中,管理服务器在确定设定时长内接收到来自于目标终端的进入应用请求,且判断待验证令牌与目标验证令牌匹配的情况下,还可以判断就绪队列中目标云设备的设备状态是否为等待响应状态。从而可以进一步保证为目标终端分配的目标云设备的可用性,提高了云设备分配方法的准确性。则在步骤405之前,管理服务器控制可分配云设备响应目标运行请求的过程还可以包括:
管理服务器可以获取就绪队列中匹配信息包括的目标云设备的设备标识,判断目标云设备的设备状态是否为等待响应状态。当设定时长内接收到来自于目标终端的进入应用请求、待验证令牌与目标验证令牌匹配,且目标云设备的设备状态为等待响应状态时,执行步骤405控制目标云设备响应目标运行请求。当目标云设备的设备状态不为等待响应状态时,执行步骤406从就绪队列中移除匹配信息,并重新确定目标运行请求。
本发明实施例中,在接收到来自于终端的应用运行请求后,可以检测云设备系统中是否存在可分配云设备。当云设备系统中无可分配云设备时,将应用运行请求对应的请求标识添加到缓存队列。当再次检测到云设备系统中存在可分配云设备时,基于缓存队列中各请求标识的队列顺序,确定目标运行请求。并控制可分配云设备响应目标运行请求,实现云应用的运行。该技术方案中,由于管理服务器可以在云设备系统中无可分配云设备的情况下,将接收到的应用运行请求对应的请求标识存储至缓存队列。并在再次检测到云设备系统中存在可分配云设备的情况下,基于各请求标识的队列顺序,依次为缓存队列中对应的应用运行请求分配可分配云设备。因此,用户在想要运行某云应用时,可以仅发送一次应用运行请求,等待为其分配云设备即可。无需反复发送应用运行请求以请求分配云设备,优化了云应用的启动运行方式,提升了云应用的启动运行方式的便捷性。
在一种可能的场景中,在已经存在排队等待进行应用的终端,即管理服务器的缓存队列中存在请求标识的情况下,管理服务器在接收到来自于终端发送的应用运行请求的同时,恰好检测到云设备系统中存在可分配云设备。则缓存队列和实时请求发生竞合,此时,管理服务器可以有多种方式,来确定该新接收到的应用运行请求的处理方法。
在第一种可选的实现方式中,管理服务器优先处理新接收到的应用运行请求。则所述方法包括:
在终端向管理服务器发送应用运行请求之后,若云设备系统中存在可分配云设备,则管理服务器可以直接将该应用运行请求确定目标运行请求,并控制可分配云设备响应目标运行请求。
此时,缓存队列中各请求标识对应的应用请求继续等待,直至再检测到存在可分配云设备时,再次确定目标运行请求。
在第二种可选的实现方式中,管理服务器优先处理缓存队列中请求标识指示的应用运行请求。则所述方法包括:
在终端向管理服务器发送应用运行请求之后,若云设备系统中存在可分配云设备,且获取到缓存队列不为空,此时,管理服务器可以将该应用运行请求对应的请求标识添加至缓存队列中,并基于缓存队列中各请求标识的队列顺序(部分实施例还可以进一步结合其他参考维度),确定目标运行请求。其中,管理服务器基于缓存队列中各请求标识的队列顺序,确定目标运行请求的过程可以参考前述步骤203的多种相关的实现方式,本发明实施例对此不做赘述。
在第三种可选的实现方式中,应用运行请求具有对应优先级。管理服务器基于接收到的新的应用运行请求的优先级,以及缓存队列中各请求标识对应的优先级,确定执行过程。
此时,请参考图4,其示出了本发明实施例提供的又一种云设备分配方法的流程图。如图4所示,所述方法包括:
步骤501、当云设备系统中存在可分配云设备时,管理服务器获取缓存队列的队列状态。
本发明实施例中,缓存队列的队列状态可以包括空状态或者非空状态。管理服务器在接收到来自终端的应用运行请求后,可以检测当前云设备系统中是否存在可分配云设备。当检测到云设备系统中存在可分配云设备时,表明当前云设备系统存在响应终端的云设备资源,则管理服务器可以获取缓存队列的队列状态。以判断缓存队列是否为空。当缓存队列的队列状态为空状态时,表明缓存队列为空,进而表明当前实施环境中不存在等待排队响应的应用运行请求,则管理服务器可以直接控制可分配云设备响应于该终端发送的新的应用运行请求。当缓存队列的队列状态为非空状态时,表明缓存队列不为空,进而表明当前实施环境中存在等待排队响应的应用运行请求。则管理服务器可以执行下述步骤502至步骤505。
步骤502、当缓存队列不为空时,管理服务器获取应用运行请求的第一优先级,以及缓存队列中各请求标识对应的第二优先级。
本发明实施例中,当管理服务器确定缓存队列不为空时,表明管理服务器在接收到来自于终端的应用运行请求之前,还接收到来自于其他终端发送的应用运行请求,且该来自于其他终端的应用运行请求暂未分配到云设备。即云设备系统中存在排队等待中的应用运行请求。则管理服务器可以获取应用运行请求的第一优先级以及缓存队列中各请求标识对应的第二优先级。以便管理服务器基于应用运行请求的第一优先级以及缓存队列中各请求标识对应的第二优先级,确定对接收到的应用运行请求的处理方式。
步骤503、当第一优先级高于缓存队列中的各第二优先级时,管理服务器将应用运行请求确定为目标运行请求,并控制可分配云设备响应目标运行请求。
本发明实施例中,当第一优先级高于缓存队列中的各第二优先级时,表明应用运行请求的发送端的用户等级高于缓存队列中各请求标识指示的应用运行请求的发送端的用户等级。则管理服务器可以将接收到应用运行请求直接确定为目标运行请求,并控制可分配云设备响应目标运行请求,以直接为该应用运行请求分配云设备。其中,管理服务器控制可分配云设备响应目标运行请求的解释和实现方式可以参考前述步骤204中管理服务器控制可分配云设备响应目标运行请求的解释和实现方式,本发明实施例对此不做赘述。
步骤504、当缓存队列中存在至少一个请求标识的第二优先级大于第一优先级时,管理服务器将应用运行请求对应的请求标识添加到缓存队列。
本发明实施例中,当缓存队列中存在至少一个请求标识的第二优先级大于第一优先级时,表明缓存队列中第二优先级大于第一优先级的请求标识指示的应用运行请求的发送终端,其对应的用户等级大于第一优先级对应的应用运行请求的发送端的用户等级。则管理服务器可以将该接收到的应用运行请求对应的请求标识添加到缓存队列。优先为缓存队列中存储的请求标识指示的应用运行请求分配响应云设备。更进一步的,优先为缓存队列中优先级更高的请求标识所指示的应用运行请求分配响应云设备。
步骤505、管理服务器基于缓存队列中各请求标识对应的优先级,以及缓存队列中各请求标识的队列顺序,确定目标运行请求。并控制可分配云设备响应目标运行请求。
步骤505的实现方式可以参考前述步骤203中,管理服务器基于缓存队列中各请求标识对应的优先级,以及缓存队列中各请求标识的队列顺序,确定目标运行请求的解释和实现方式,本发明实施例对此不做赘述。
请参考图5,其示出了本发明实施例提供的再一种设备分配方法的流程图。该云设备分配方法可以应用于如图1所示的云设备系统,由该云设备系统中的管理服务器执行。如图5所示,云设备分配方法包括:
步骤601、终端向管理设备发送应用运行请求。
步骤602、当云设备系统中无可分配云设备时,管理服务器将应用运行请求对应的请求标识添加到缓存队列。
步骤603、当再次检测到云设备系统中存在可分配云设备时,管理服务器基于缓存队列中各请求标识的队列顺序,确定目标运行请求。
步骤604、管理服务器控制可分配云设备响应目标运行请求。
该步骤601至步骤604的解释和实现方式可以分别参考前述步骤201至步骤204的相关解释和实现方式,本发明实施例对此不做赘述。
步骤605、终端向管理服务器发送终止等待请求。终止等待请求用于请求终止应用运行请求。
本发明实施例中,用户若在等待进入云应用的过程中想要放弃时,可以通过终端上安装的客户端应用执行退出等待操作。终端在接收到退出等待操作后,可以响应于该退出等待操作,向管理服务器发送终止等待请求,以用于请求终止其发送的应用运行请求。
步骤606、管理服务器删除应用运行请求的相关信息。相关信息包括:缓存队列中存储的应用运行请求对应的请求标识,或者,就绪队列中存储的应用运行请求对应的匹配信息。
本发明实施例中,管理服务器在接收到来自于终端发送的终止等待请求时,可以删除应用运行请求的相关信息。该相关信息可以包括缓存队列中存储的应用运行请求对应的请求标识。可选地,若管理服务器已将应用运行请求对应的匹配信息添加至就绪队列,则管理服务器删除的相关信息中还可以包括:就绪队列中该应用运行请求对应的匹配信息。
本发明实施例提供的云设备分配方法,在接收到来自于终端的应用运行请求后,可以检测云设备系统中是否存在可分配云设备。当云设备系统中无可分配云设备时,将应用运行请求对应的请求标识添加到缓存队列。当再次检测到云设备系统中存在可分配云设备时,基于缓存队列中各请求标识的队列顺序,确定目标运行请求。并控制可分配云设备响应目标运行请求,实现云应用的运行。该技术方案中,由于管理服务器可以在云设备系统中无可分配云设备的情况下,将接收到的应用运行请求对应的请求标识存储至缓存队列。并在再次检测到云设备系统中存在可分配云设备的情况下,基于各请求标识的队列顺序,依次为缓存队列中对应的应用运行请求分配可分配云设备。因此,用户在想要运行某云应用时,可以仅发送一次应用运行请求,等待为其分配云设备即可。无需反复发送应用运行请求以请求分配云设备,优化了云应用的启动运行方式,提升了云应用的启动运行方式的便捷性,进而可以提高了用户的留存率,提升用户体验。
示例的,请参考图6,其示出了本发明实施例提供的另一种云设备分配方法的流程图。该云设备分配方法可以应用于如图1所示的云设备系统。如图7所示,本发明实施例以终端请求为其分配运行云游戏的云设备,且云设备为云手机为例进行说明。其中,管理服务器包括可用队列、等候队列以及就绪队列。可用队列,又称云设备可用队列。其用于存储云设备系统中可分配云设备的设备标识以及设备状态。等候队列,又称缓存队列。其为Redis队列。等候队列用于存储从终端接收到的应用运行请求对应的请求标识以及请求标识对应的目标验证令牌。该等候队列中各队列元素按照请求标识存储至等候队列的存储时刻由早到晚的顺序排列。就绪队列用于存储匹配成功的终端的相关信息以及云设备的相关信息,即前述匹配信息。
终端在接收到针对云游戏的设定操作后,向管理服务器发送应用运行请求,该发送应用运行请求中可以包括应用运行请求的请求标识、终端的终端标识以及云游戏的应用标识。
管理服务器检测可用队列中是否存储有可用云设备的设备标识。若可用队列中存储有设备标识,表明云设备系统中存在可分配云设备,即云设备系统中可分配云手机(又称可用云手机)的数量大于零。则不进入云游戏排队流程。即管理服务器直接从可分配云设备中确定目标云设备,控制该目标云设备响应该终端发送的应用运行请求。若可用队列中未存储有设备标识,表明云设备系统中无可分配云设备,即云设备系统中可分配云手机(又称可用云手机)的数量等于零。则管理服务器生成与终端发送的应用运行请求对应的目标验证令牌。
管理服务器将请求标识以及对应的目标验证令牌关联存储至等候队列。并获取请求标识对应的排队人数。向终端发送排队等待消息。该排队等待消息包括排队人数,以及请求标识对应的目标验证令牌。
管理服务器包括定时扫描任务(SRV-TASK)模块。该定时扫描任务模块可以周期性地扫描可用队列和等候队列。例如,每10秒扫描一次可用队列,以检测可用队列中是否存储有可分配云设备的设备标识。在确定可用队列中存储有设备标识时,获取等候队列中位于首位的目标请求标识。将目标请求标识指示的应用运行请求作为目标运行请求。不难理解的是,当可用队列中终端对应的请求标识的存储时刻为与当前时刻间隔最长的请求标识时,管理服务器获取到的等候队列中位于首位的目标请求标识即为终端对应的请求标识。本示例以目标请求标识即为终端的请求标识为例进行说明。当然,若可用队列中终端对应的请求标识的存储时刻不是与当前时刻间隔最长的请求标识时,则管理服务器可以基于等待队列的队列顺序,获取位于首位为的目标请求标识。将目标请求标识指示的应用运行请求作为目标运行请求。
管理服务器从可用队列中存储的设备标识对应的可分配云设备中,确定的目标云设备。将目标云设备的相关信息与目标请求标识对应的终端的相关信息绑定。将包括目标云设备的相关信息与目标终端的相关信息的匹配信息存储至就绪队列。
管理服务器向终端发送匹配成功消息。管理服务器判断是否超时。即管理服务器判断在设定时长内是否接收到终端发送的进入应用请求。当确定发送匹配成功消息的时刻与当前时刻之间的等待响应时间小于或者等于设定时长时,管理服务器接收到终端发送的进入应用请求,则管理服务器可以判断进入应用请求中携带的待验证令牌,与请求标识对应的目标验证令牌是否匹配。
若待验证令牌与目标验证令牌相匹配,表明发送进入应用请求的终端为与目标云设备匹配的目标终端。则管理服务器可以控制目标云设备响应终端发送的应用运行请求。即管理服务器可以控制目标云设备运行应用标识指示的云游戏,并使得云设备向终端发送游戏画面和音频。也即是终端所属用户进行云游戏。
当确定发送匹配成功消息的时刻与当前时刻之间的等待响应时间大于设定时长时,或者,当待验证令牌与目标验证令牌不相匹配时,管理设备可以删除就绪队列中存储的终端对应的匹配信息,将目标云设备的相关信息添加至可用队列。该目标云设备的相关信息可以包括:目标云设备的设备标识。
综上所述,本发明实施例提供的云设备分配方法,在接收到来自于终端的应用运行请求后,可以检测云设备系统中是否存在可分配云设备。当云设备系统中无可分配云设备时,将应用运行请求对应的请求标识添加到缓存队列。当再次检测到云设备系统中存在可分配云设备时,基于缓存队列中各请求标识的队列顺序,确定目标运行请求。并控制可分配云设备响应目标运行请求,实现云应用的运行。该技术方案中,由于管理服务器可以在云设备系统中无可分配云设备的情况下,将接收到的应用运行请求对应的请求标识存储至缓存队列。并在再次检测到云设备系统中存在可分配云设备的情况下,基于各请求标识的队列顺序,依次为缓存队列中对应的应用运行请求分配可分配云设备。因此,用户在想要运行某云应用时,可以仅发送一次应用运行请求,等待为其分配云设备即可。无需反复发送应用运行请求以请求分配云设备,优化了云应用的启动运行方式,提升了云应用的启动运行方式的便捷性。
请参考图7,其示出了本发明实施例提供的一种云设备分配装置的框图。如图7所示,云设备分配装置700可以包括:接收模块701、添加模块702、确定模块703以及控制模块704。
接收模块701,用于接收来自于终端的应用运行请求;
添加模块702,用于当云设备系统中无可分配云设备时,将应用运行请求对应的请求标识添加到缓存队列;
确定模块703,用于当再次检测到云设备系统中存在可分配云设备时,基于缓存队列中各请求标识的队列顺序,确定目标运行请求;
控制模块704,用于控制可分配云设备响应目标运行请求。
可选的,确定模块703,还用于:基于缓存队列中各请求标识对应的优先级,以及缓存队列中各请求标识的队列顺序,确定目标运行请求,优先级用于描述应用运行请求的发送端的用户等级。
可选的,确定模块703,还用于:按照缓存队列中优先级由高到低的顺序,以及缓存队列中各请求标识由前到后的队列顺序,确定目标运行请求。
可选的,缓存队列的数目为多个,其中多个缓存队列包括:第一队列与第二队列;第一队列中任意一个请求标识对应的优先级,高于,第二队列中任意一个请求标识对应的优先级;确定模块703,还用于:
当第一队列不为空时,在第一队列中基于各请求标识的队列顺序,确定目标运行请求;
或者,当第一队列为空,在第二队列中基于各请求标识的队列顺序,确定目标运行请求。
可选的,云设备分配装置还包括:获取模块。
获取模块,用于当云设备系统中存在可分配云设备时,获取缓存队列的队列状态;以及还用于当缓存队列不为空时,获取应用运行请求的第一优先级,以及缓存队列中各请求标识对应的第二优先级。
确定模块703,用于当第一优先级高于缓存队列中的各第二优先级时,将应用运行请求确定为目标运行请求,并控制可分配云设备响应目标运行请求;
添加模块702,用于当缓存队列中存在至少一个请求标识的第二优先级大于第一优先级时,将应用运行请求对应的请求标识添加到缓存队列。
可选的,控制模块704,还用于:
从可分配云设备中确定目标云设备;
将匹配信息添加至就绪队列,匹配信息包括以下至少一项:目标云设备的设备标识、目标终端的终端标识,其中,目标终端为目标运行请求的发送终端;
向目标终端发送匹配成功消息,匹配成功消息用于提示目标终端向管理服务器发送进入应用请求;
当设定时长内接收到来自于目标终端的进入应用请求时,控制目标云设备响应目标运行请求;
当设定时长内未接收到来自于目标终端的进入应用请求时,从就绪队列中移除匹配信息,并重新确定目标运行请求。
可选的,控制模块704,还用于:
当设定时长内接收到来自于目标终端的进入应用请求时,获取进入应用请求中携带的待验证令牌;
当待验证令牌与目标验证令牌相匹配时,控制目标云设备响应目标运行请求;
当待验证令牌与目标验证令牌不匹配时,从就绪队列中移除匹配信息,并重新确定目标运行请求。
可选的,云设备分配装置还包括:更新模块。
更新模块,用于根据目标云设备的设备标识与就绪队列的存储关系,更新目标云设备的设备状态,设备状态包括:等待响应状态或者空闲状态,等待响应状态用于限制目标云设备的响应范围。
可选的,更新模块,还用于:当就绪队列中包含设备标识时,控制目标云设备的设备状态为等待响应状态;当就绪队列中不包含设备标识时,控制目标云设备的设备状态为空闲状态。
可选的,云设备分配装置还包括:删除模块。
删除模块,用于当接收到来自于终端发送的终止等待请求时,删除应用运行请求的相关信息;其中,终止等待请求用于请求终止应用运行请求,相关信息包括:缓存队列中存储的应用运行请求对应的请求标识,或者,就绪队列中存储的应用运行请求对应的匹配信息。
本发明实施例还提供了一种电子设备,该电子设备可以为上述服务请求方。如图8所示,包括处理器801、通信接口802、存储器803和通信总线804,其中,处理器801,通信接口802,存储器803通过通信总线804完成相互间的通信,
存储器803,用于存放计算机程序;
处理器801,用于执行存储器803上所存放的程序时,实现如前述方法侧描述的任意一个实施例所述的云设备分配方法。
上述终端提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述终端与其他设备之间的通信。
存储器可以包括随机存取存储器(RandomAccess 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 (13)
1.一种云设备分配方法,其特征在于,包括:
接收来自于终端的应用运行请求;
当云设备系统中无可分配云设备时,将所述应用运行请求对应的请求标识添加到缓存队列;
当再次检测到所述云设备系统中存在可分配云设备时,基于所述缓存队列中各请求标识的队列顺序,确定目标运行请求;
控制所述可分配云设备响应所述目标运行请求。
2.根据权利要求1所述的方法,其特征在于,所述基于所述缓存队列中各请求标识的队列顺序,确定目标运行请求,包括:
基于所述缓存队列中各请求标识对应的优先级,以及所述缓存队列中各请求标识的队列顺序,确定所述目标运行请求,所述优先级用于描述应用运行请求的发送端的用户等级。
3.根据权利要求2所述的方法,其特征在于,所述基于所述缓存队列中各请求标识对应的优先级,以及所述缓存队列中各请求标识的队列顺序,确定目标运行请求,包括:
按照所述缓存队列中优先级由高到低的顺序,以及所述缓存队列中各请求标识由前到后的队列顺序,确定所述目标运行请求。
4.根据权利要求2所述的方法,其特征在于,所述缓存队列的数目为多个,其中多个所述缓存队列包括:第一队列与第二队列;所述第一队列中任意一个请求标识对应的优先级,高于,所述第二队列中任意一个请求标识对应的优先级;
所述基于所述缓存队列中各请求标识对应的优先级,以及所述缓存队列中各请求标识的队列顺序,确定目标运行请求,包括:
当所述第一队列不为空时,在所述第一队列中基于各请求标识的队列顺序,确定所述目标运行请求;
或者,当所述第一队列为空,在所述第二队列中基于各请求标识的队列顺序,确定所述目标运行请求。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述云设备系统中存在可分配云设备时,获取所述缓存队列的队列状态;
当所述缓存队列不为空时,获取所述应用运行请求的第一优先级,以及所述缓存队列中各请求标识对应的第二优先级;
当所述第一优先级高于所述缓存队列中的各所述第二优先级时,将所述应用运行请求确定为目标运行请求,并控制所述可分配云设备响应所述目标运行请求;
当所述缓存队列中存在至少一个请求标识的第二优先级大于所述第一优先级时,将所述应用运行请求对应的请求标识添加到所述缓存队列。
6.根据权利要求1所述的方法,其特征在于,所述控制所述可分配云设备响应所述目标运行请求,包括:
从所述可分配云设备中确定目标云设备;
将匹配信息添加至就绪队列,所述匹配信息包括以下至少一项:所述目标云设备的设备标识、目标终端的终端标识,其中,所述目标终端为所述目标运行请求的发送终端;
向所述目标终端发送匹配成功消息,所述匹配成功消息用于提示所述目标终端向管理服务器发送进入应用请求;
当设定时长内接收到来自于所述目标终端的进入应用请求时,控制所述目标云设备响应所述目标运行请求;
当设定时长内未接收到来自于所述目标终端的进入应用请求时,从所述就绪队列中移除所述匹配信息,并重新确定目标运行请求。
7.根据权利要求6所述的方法,其特征在于,所述当设定时长内接收到来自于所述目标终端的进入应用请求时,控制所述目标云设备响应所述目标运行请求,包括:
当设定时长内接收到来自于所述目标终端的进入应用请求时,获取所述进入应用请求中携带的待验证令牌;
当所述待验证令牌与目标验证令牌相匹配时,控制所述目标云设备响应所述目标运行请求;
当所述待验证令牌与所述目标验证令牌不匹配时,从所述就绪队列中移除所述匹配信息,并重新确定目标运行请求。
8.根据权利要求6所述的方法,其特征在于,所述方法还包括:
根据所述目标云设备的设备标识与所述就绪队列的存储关系,更新所述目标云设备的设备状态,所述设备状态包括:等待响应状态或者空闲状态,所述等待响应状态用于限制所述目标云设备的响应范围。
9.根据权利要求8所述的方法,其特征在于,所述根据所述目标云设备与所述就绪队列的存储关系,更新所述目标云设备的设备状态,包括:
当所述就绪队列中包含所述设备标识时,控制所述目标云设备的设备状态为所述等待响应状态;
当所述就绪队列中不包含所述设备标识时,控制所述目标云设备的设备状态为所述空闲状态。
10.根据权利要求1所述的方法,其特征在于,在所述将所述应用运行请求对应的请求标识添加到缓存队列之后,所述方法还包括:
当接收到来自于所述终端发送的终止等待请求时,删除所述应用运行请求的相关信息;其中,所述终止等待请求用于请求终止所述应用运行请求,所述相关信息包括:所述缓存队列中存储的所述应用运行请求对应的请求标识,或者,就绪队列中存储的所述应用运行请求对应的匹配信息。
11.一种云设备分配装置,其特征在于,包括:
接收模块,用于接收来自于终端的应用运行请求;
添加模块,用于当云设备系统中无可分配云设备时,将所述应用运行请求对应的请求标识添加到缓存队列;
确定模块,用于当再次检测到所述云设备系统中存在可分配云设备时,基于所述缓存队列中各请求标识的队列顺序,确定目标运行请求;
控制模块,用于控制所述可分配云设备响应所述目标运行请求。
12.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-10任一所述的方法步骤。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-10中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110745571.8A CN113368494A (zh) | 2021-06-30 | 2021-06-30 | 云设备分配方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110745571.8A CN113368494A (zh) | 2021-06-30 | 2021-06-30 | 云设备分配方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113368494A true CN113368494A (zh) | 2021-09-10 |
Family
ID=77580564
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110745571.8A Pending CN113368494A (zh) | 2021-06-30 | 2021-06-30 | 云设备分配方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113368494A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114547744A (zh) * | 2022-02-24 | 2022-05-27 | 清华大学 | 模型导出方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105183564A (zh) * | 2015-09-30 | 2015-12-23 | 北京奇虎科技有限公司 | 基于云测试平台的设备调度方法、装置及系统 |
CN110837410A (zh) * | 2019-10-30 | 2020-02-25 | 北京奇艺世纪科技有限公司 | 任务调度方法、装置、电子设备及计算机可读存储介质 |
CN111930434A (zh) * | 2020-05-29 | 2020-11-13 | 北京视博云信息技术有限公司 | 一种云应用的启动方法、装置、可读存储介质及设备 |
CN112169312A (zh) * | 2020-09-27 | 2021-01-05 | 厦门雅基软件有限公司 | 云游戏服务的排队调度方法、装置、设备和存储介质 |
CN112804222A (zh) * | 2020-12-31 | 2021-05-14 | 中国平安人寿保险股份有限公司 | 基于云部署的数据传输方法、装置、设备及存储介质 |
-
2021
- 2021-06-30 CN CN202110745571.8A patent/CN113368494A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105183564A (zh) * | 2015-09-30 | 2015-12-23 | 北京奇虎科技有限公司 | 基于云测试平台的设备调度方法、装置及系统 |
CN110837410A (zh) * | 2019-10-30 | 2020-02-25 | 北京奇艺世纪科技有限公司 | 任务调度方法、装置、电子设备及计算机可读存储介质 |
CN111930434A (zh) * | 2020-05-29 | 2020-11-13 | 北京视博云信息技术有限公司 | 一种云应用的启动方法、装置、可读存储介质及设备 |
CN112169312A (zh) * | 2020-09-27 | 2021-01-05 | 厦门雅基软件有限公司 | 云游戏服务的排队调度方法、装置、设备和存储介质 |
CN112804222A (zh) * | 2020-12-31 | 2021-05-14 | 中国平安人寿保险股份有限公司 | 基于云部署的数据传输方法、装置、设备及存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114547744A (zh) * | 2022-02-24 | 2022-05-27 | 清华大学 | 模型导出方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111030936B (zh) | 网络访问的限流控制方法、装置及计算机可读存储介质 | |
CN108776934B (zh) | 分布式数据计算方法、装置、计算机设备及可读存储介质 | |
CN110417671B (zh) | 数据传输的限流方法和服务器 | |
US9201693B2 (en) | Quota-based resource management | |
WO2019205371A1 (zh) | 服务器、消息分配的方法及存储介质 | |
CN111221638B (zh) | 并发任务的调度处理方法、装置、设备和介质 | |
CN107451853B (zh) | 一种红包实时派发的方法、装置、系统及存储介质 | |
CN109743411B (zh) | 一种在分布式环境下动态调度ip代理池的方法、装置及存储介质 | |
KR20080050977A (ko) | 우선순위 기반의 무선 usb 전송 서비스 관리 장치 및방법 | |
WO2019047708A1 (zh) | 资源配置方法及相关产品 | |
CN111309496A (zh) | 延时任务实现方法、系统、装置、设备、存储介质 | |
CN115237589A (zh) | 一种基于sr-iov的虚拟化方法、装置和设备 | |
CN108764866B (zh) | 用于分配资源、领取资源的方法和设备 | |
CN113368494A (zh) | 云设备分配方法、装置、电子设备及存储介质 | |
US20150249625A1 (en) | Using analytics to optimize performance of a messaging system via topic migration to alternate delivery methods | |
CN117724852A (zh) | 一种云电脑计算资源分配方法及装置 | |
CN113271228B (zh) | 带宽资源调度方法、装置、设备及计算机可读存储介质 | |
CN115421889A (zh) | 进程间的请求管理方法、装置、电子设备及存储介质 | |
CN114374657A (zh) | 一种数据处理方法和装置 | |
CN113407309A (zh) | 虚拟机内存申请方法、装置、存储介质及电子设备 | |
CN106484536B (zh) | 一种io调度方法、装置和设备 | |
CN110633141A (zh) | 一种应用程序的内存管理方法、装置、终端设备及介质 | |
CN111538721A (zh) | 账号处理方法、装置、电子设备及计算机可读存储介质 | |
CN112135187B (zh) | 多媒体数据生成方法、截取方法、装置、设备及存储介质 | |
JP7186043B2 (ja) | 管理装置、システム及びプログラム |
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 |