转码资源调度方法、电子设备及计算机可读存储介质与流程

文档序号:20440240发布日期:2020-04-17 22:21阅读:109来源:国知局
转码资源调度方法、电子设备及计算机可读存储介质与流程

本发明涉及多媒体技术领域,特别是涉及一种转码资源调度方法、电子设备及计算机可读存储介质。



背景技术:

电子设备在处理视频、音频及图片类信息时,会对该类信息进行转码。例如,进行视频转码,视频转码将已经压缩编码的视频流转换成另一个视频码流,以适应不同的网络带宽、不同的终端处理能力和不同的用户需求。对信息进行转码,需要对信息进行大量的计算,因此,需要大量的转码资源。

电子设备通常向平台请求转码资源以进行转码,目前,电子设备在平台上占用固定的转码资源,导致转码任务量较大时,转码资源压力较大,而转码任务量较小时,转码资源空闲,从而使得转码资源的利用率较低。



技术实现要素:

本发明实施例的目的在于提供一种转码资源调度方法、电子设备及计算机可读存储介质,以实现提高转码资源的利用率。具体技术方案如下:

在本发明实施的第一方面,首先提供了一种转码资源调度方法,应用于电子设备,所述方法包括:

获取待转码任务量;

基于所述待转码任务量确定所述待转码任务量所需的转码资源量;

基于所述待转码任务量所需的转码资源量调整可用的转码资源量,所述可用的转码资源量的初始值基于历史转码任务量确定。

在本发明实施的第二方面,还提供了一种电子设备,其特征在于,所述电子设备包括:

第一获取模块,用于获取待转码任务量;

第一确定模块,用于基于所述待转码任务量确定所述待转码任务量所需的转码资源量;

第一调整模块,用于基于所述待转码任务量所需的转码资源量调整可用的转码资源量,所述可用的转码资源量的初始值基于历史转码任务量确定。

在本发明实施的又一方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,执行上述任一所述的转码资源调度方法。

在本发明实施的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一所述的转码资源调度方法。

在本发明实施的又一方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的转码资源调度方法。

本发明实施例提供的转码资源调度方法,获取待转码任务量;基于所述待转码任务量确定所述待转码任务量所需的转码资源量;基于所述待转码任务量所需的转码资源量调整可用的转码资源量,所述可用的转码资源量的初始值基于历史转码任务量确定。这样,能够基于所述待转码任务量所需的转码资源量实时调整可用的转码资源量,避免电子设备在平台上占用固定的转码资源,从而能够提高转码资源的利用率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。

图1是本发明实施例提供的一种转码资源调度方法的流程图;

图2是本发明实施例提供的一种电子设备的结构示意图;

图3是本发明实施例提供的另一种电子设备的结构示意图;

图4是本发明实施例提供的另一种电子设备的结构示意图;

图5是本发明实施例提供的另一种电子设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。

参见图1,图1是本发明实施例提供的一种转码资源调度方法的流程图,所述方法应用于电子设备,如图1所示,所述方法包括以下步骤:

步骤101、获取待转码任务量;

步骤102、基于所述待转码任务量确定所述待转码任务量所需的转码资源量;

步骤103、基于所述待转码任务量所需的转码资源量调整可用的转码资源量,所述可用的转码资源量的初始值基于历史转码任务量确定。

其中,所述待转码任务量可以是对视频、音频或者图片等进行转码的任务量,对视频、音频或者图片等进行转码需要大量的计算资源,执行所述待转码任务所需的计算资源的总量可以作为所述待转码任务量所需的转码资源量。可以从任务调度中心获取待转码任务量。

另外,所述待转码任务量所需的转码资源量可以与所述待转码任务量呈正比例关系,例如,所述待转码任务量所需的转码资源量可以与所述待转码任务量的比值为固定值;或者,所述电子设备上可以存储有待转码任务量与待转码任务量所需的转码资源量的对应关系表,可以在所述对应关系表中基于所述待转码任务量查找所述待转码任务量所需的转码资源量,所述对应关系表可以基于历史转码任务量及历史转码任务量占用的转码资源量确定。

进一步的,所述基于所述待转码任务量所需的转码资源量调整可用的转码资源量,可以是,在所述待转码任务量所需的转码资源量大于当前可用的转码资源量的情况下,增大可用的转码资源量;在所述待转码任务量所需的转码资源量小于当前可用的转码资源量的情况下,减小可用的转码资源量。

需要说明的是,所述可用的转码资源量的初始值基于历史转码任务量确定,可以是,所述可用的转码资源量的初始值为全部历史转码任务量的均值所需的转码资源量;或者还可以是,所述可用的转码资源量的初始值为某一时刻的历史转码任务量所需的转码资源量;或者还可以是,所述可用的转码资源量的初始值为某一时间范围内的历史转码任务量的均值所需的转码资源量。本发明实施例对此不进行限定。

在实际应用中,所述电子设备可以包括任务调度层以及资源调度层,可以由资源调度层实现上述转码资源调度方法中的步骤。在任务调度层中,可以待转码任务可以下发至任务调度中心,任务调度中心可以将待转码任务调度至任务实时队列,待转码任务进入任务实时队列后等待任务执行。任务调度中心可以将待转码任务对应的待转码任务量发送至资源调度层中,从而资源调度层可以获取待转码任务量。资源调度层还可以基于历史转码任务量确定所述可用的转码资源量的初始值。

进一步的,资源调度层可以向云平台请求创建资源,以增大可用的转码资源量,或者,可以向云平台请求销毁资源,以减少可用的转码资源量。在向云平台请求创建资源之前,可以按照预先设置的资源的类型和厂商确定待创建的资源的类型和厂商。

本发明实施例中,获取待转码任务量;基于所述待转码任务量确定所述待转码任务量所需的转码资源量;基于所述待转码任务量所需的转码资源量调整可用的转码资源量,所述可用的转码资源量的初始值基于历史转码任务量确定。这样,能够基于所述待转码任务量所需的转码资源量实时调整可用的转码资源量,避免电子设备在平台上占用固定的转码资源,从而能够提高转码资源的利用率。

针对步骤101,作为一种可选的实施方式,所述获取待转码任务量之前,所述方法还包括:

获取初始转码任务量,所述初始转码任务量为第一预设时长内的历史转码任务量的均值;

根据所述初始转码任务量确定所述初始转码任务量所需的转码资源量;

其中,所述可用的转码资源量的初始值为所述初始转码任务量所需的转码资源量。

其中,所述第一预设时长可以为一天,或者一个月,或者可以为一年等等。所述初始转码任务量所需的转码资源量与所述初始转码任务量的关系,可以与所述待转码任务量所需的转码资源量与所述待转码任务量的关系相同。

在实际应用中,待转码任务量可以存在高峰期和低峰期,在高峰期待转码任务量较大,转码资源量可能会存在不足;而在低峰期待转码任务量较小,转码资源量存在多余。高峰期通常只有6-8小时,大部分时间处于非高峰期,而非高峰期的转码资源利用率不足,甚至会出现闲置。第一预设时长内的历史转码任务量的均值,可以是,高峰期内的历史转码任务量的均值。

该实施方式中,获取初始转码任务量,根据所述初始转码任务量确定所述初始转码任务量所需的转码资源量,所述可用的转码资源量的初始值为所述初始转码任务量所需的转码资源量。这样,由第一预设时长内的历史转码任务量的均值确定所述可用的转码资源量的初始值,使得所述可用的转码资源量能够基本满足转码需求。

作为一种可选的实施方式,所述待转码任务量所需的转码资源量为所述待转码任务量与第一比值的乘积,所述第一比值为所述可用的转码资源量的初始值与所述初始转码任务量的比值。

该实施方式中,所述待转码任务量所需的转码资源量为所述待转码任务量与第一比值的乘积,这样,基于所述第一比值可以较为准确地确定所述待转码任务量所需的转码资源量。

针对步骤103,作为一种可选的实施方式,所述基于所述待转码任务量所需的转码资源量调整可用的转码资源量,包括:

若可用的转码资源量大于所述待转码任务量所需的转码资源量,则将所述可用的转码资源量减小第一转码资源量,所述第一转码资源量为所述可用的转码资源量与所述待转码任务量所需的转码资源量的差值;

若可用的转码资源量小于所述待转码任务量所需的转码资源量,则将所述可用的转码资源量增加第二转码资源量,所述第二转码资源量为所述待转码任务量所需的转码资源量与所述可用的转码资源量的差值。

该实施方式中,若可用的转码资源量大于所述待转码任务量所需的转码资源量,则将所述可用的转码资源量减小第一转码资源量,若可用的转码资源量小于所述待转码任务量所需的转码资源量,则将所述可用的转码资源量增加第二转码资源量。这样,能够实时根据转码资源的需求量调整可用的转码资源量,提高转码资源的利用率;并且通过动态增减可用的转码资源量,实现按需使用转码资源量;进一步的,通过弹性调度可用的转码资源量,避免了转码资源的浪费,节约了成本。

针对步骤101,作为一种可选的实施方式,所述获取待转码任务量之后,所述方法还包括:

确定所述待转码任务量的第一增长速率;

在第二预设时长后确定所述待转码任务量的第二增长速率;

若所述第二增长速率大于所述第一增长速率,则基于所述第一增长速率和所述第二增长速率调整所述可用的转码资源量。

其中,所述第二预设时长可以为5分钟,30分钟或者1小时等等。所述基于所述第一增长速率和所述第二增长速率调整所述可用的转码资源量,可以是,基于所述第一增长速率和所述第二增长速率增大所述可用的转码资源量,具体的,可以是,计算所述第二增长速率与所述第一增长速率的差值,将所述差值乘以预设值得到的值作为增加的可用的转码资源量,所述预设值可以为预先配置的值。

需要说明的是,在实际应用中,资源调度层可以从任务实时队列确定所述待转码任务量的第一增长速率和第二增长速率,从而基于所述第一增长速率和第二增长速率监控所述任务实时队列中所述待转码任务量的积压情况。

该实施方式中,确定所述待转码任务量的第一增长速率;在第二预设时长后确定所述待转码任务量的第二增长速率;若所述第二增长速率大于所述第一增长速率,则基于所述第一增长速率和所述第二增长速率调整所述可用的转码资源量。这样,能够根据待转码任务量的增长速率调整可用的转码资源量,避免待转码任务始终处于积压状态,提高待转码任务的处理效率。

针对步骤103,作为一种可选的实施方式,所述基于所述待转码任务量所需的转码资源量调整可用的转码资源量,包括:

若可用的转码资源量小于所述待转码任务量所需的转码资源量,则向目标对象请求增加可用的转码资源量,并接收所述目标对象发送的增加的转码资源对应的标识;

若可用的转码资源量大于所述待转码任务量所需的转码资源量,则向所述目标对象请求减少部分可用的转码资源,以使所述目标对象解除所述部分可用的转码资源与所述电子设备的关联关系。

其中,所述目标对象可以为云平台。电子设备向目标对象请求增加可用的转码资源量,可以是,电子设备向目标对象请求创建转码资源。电子设备接收所述目标对象发送的增加的转码资源对应的标识,可以是,接收所述目标对象发送的增加的转码资源对应的网络地址。电子设备可以基于增加的转码资源对应的网络地址与增加的转码资源进行通信。电子设备接收所述目标对象发送的增加的转码资源对应的标识后,可以将增加的转码资源加入转码资源池中,转码资源池中的转码资源可以用于执行转码任务。

另外,电子设备向所述目标对象请求减少部分可用的转码资源,可以是,电子设备向所述目标对象请求销毁所述部分可用的转码资源。所述目标对象解除所述部分可用的转码资源与所述电子设备的关联关系,从而可以将所述部分可用的转码资源分配给其他电子设备使用。在目标对象解除所述部分可用的转码资源与所述电子设备的关联关系后,电子设备可以从转码资源池中删除所述部分可用的转码资源。

该实施方式中,若可用的转码资源量小于所述待转码任务量所需的转码资源量,则向目标对象请求增加可用的转码资源量,并接收所述目标对象发送的增加的转码资源对应的标识;若可用的转码资源量大于所述待转码任务量所需的转码资源量,则向所述目标对象请求减少部分可用的转码资源,以使所述目标对象解除所述部分可用的转码资源与所述电子设备的关联关系。这样,由目标对象对转码资源量进行分配,电子设备与目标对象进行通信确定可用的转码资源量,减少电子设备的压力。

参见图2,图2是本发明实施例提供的一种电子设备的结构示意图,如图2所示,所述电子设备200还包括:

第一获取模块201,用于获取待转码任务量;

第一确定模块202,用于基于所述待转码任务量确定所述待转码任务量所需的转码资源量;

第一调整模块203,用于基于所述待转码任务量所需的转码资源量调整可用的转码资源量,所述可用的转码资源量的初始值基于历史转码任务量确定。

可选的,如图3所示,所述电子设备200还包括:

第二获取模块204,用于获取初始转码任务量,所述初始转码任务量为第一预设时长内的历史转码任务量的均值;

第二确定模块205,用于根据所述初始转码任务量确定所述初始转码任务量所需的转码资源量;

其中,所述可用的转码资源量的初始值为所述初始转码任务量所需的转码资源量。

可选的,所述待转码任务量所需的转码资源量为所述待转码任务量与第一比值的乘积,所述第一比值为所述可用的转码资源量的初始值与所述初始转码任务量的比值。

可选的,所述第一调整模块203具体用于:

若可用的转码资源量大于所述待转码任务量所需的转码资源量,则将所述可用的转码资源量减小第一转码资源量,所述第一转码资源量为所述可用的转码资源量与所述待转码任务量所需的转码资源量的差值;

若可用的转码资源量小于所述待转码任务量所需的转码资源量,则将所述可用的转码资源量增加第二转码资源量,所述第二转码资源量为所述待转码任务量所需的转码资源量与所述可用的转码资源量的差值。

可选的,如图4所示,所述电子设备200还包括:

第三确定模块206,用于确定所述待转码任务量的第一增长速率;

第四确定模块207,用于在第二预设时长后确定所述待转码任务量的第二增长速率;

第二调整模块208,用于若所述第二增长速率大于所述第一增长速率,则基于所述第一增长速率和所述第二增长速率调整所述可用的转码资源量。

可选的,所述第一调整模块203具体用于:

若可用的转码资源量小于所述待转码任务量所需的转码资源量,则向目标对象请求增加可用的转码资源量,并接收所述目标对象发送的增加的转码资源对应的标识;

若可用的转码资源量大于所述待转码任务量所需的转码资源量,则向所述目标对象请求减少部分可用的转码资源,以使所述目标对象解除所述部分可用的转码资源与所述电子设备的关联关系。

需要说明的是,电子设备能够实现图1所述的转码资源调度方法实施例的各个过程,并能达到相同的技术效果,为避免重复,这里不再赘述。

本发明实施例还提供了一种电子设备,如图5所示,还包括处理器301、通信接口302、存储器303和通信总线304,其中,处理器301,通信接口302,存储器303通过通信总线304完成相互间的通信,

存储器303,用于存放计算机程序;

处理器301,用于执行存储器303上所存放的程序时,实现如下步骤:

获取待转码任务量;

基于所述待转码任务量确定所述待转码任务量所需的转码资源量;

基于所述待转码任务量所需的转码资源量调整可用的转码资源量,所述可用的转码资源量的初始值基于历史转码任务量确定。

可选的,处理器301还用于实现如下步骤:

获取初始转码任务量,所述初始转码任务量为第一预设时长内的历史转码任务量的均值;

根据所述初始转码任务量确定所述初始转码任务量所需的转码资源量;

其中,所述可用的转码资源量的初始值为所述初始转码任务量所需的转码资源量。

可选的,所述待转码任务量所需的转码资源量为所述待转码任务量与第一比值的乘积,所述第一比值为所述可用的转码资源量的初始值与所述初始转码任务量的比值。

可选的,处理器301实现的所述基于所述待转码任务量所需的转码资源量调整可用的转码资源量,包括:

若可用的转码资源量大于所述待转码任务量所需的转码资源量,则将所述可用的转码资源量减小第一转码资源量,所述第一转码资源量为所述可用的转码资源量与所述待转码任务量所需的转码资源量的差值;

若可用的转码资源量小于所述待转码任务量所需的转码资源量,则将所述可用的转码资源量增加第二转码资源量,所述第二转码资源量为所述待转码任务量所需的转码资源量与所述可用的转码资源量的差值。

可选的,处理器301还用于实现如下步骤:

确定所述待转码任务量的第一增长速率;

在第二预设时长后确定所述待转码任务量的第二增长速率;

若所述第二增长速率大于所述第一增长速率,则基于所述第一增长速率和所述第二增长速率调整所述可用的转码资源量。

可选的,处理器301实现的所述基于所述待转码任务量所需的转码资源量调整可用的转码资源量,包括:

若可用的转码资源量小于所述待转码任务量所需的转码资源量,则向目标对象请求增加可用的转码资源量,并接收所述目标对象发送的增加的转码资源对应的标识;

若可用的转码资源量大于所述待转码任务量所需的转码资源量,则向所述目标对象请求减少部分可用的转码资源,以使所述目标对象解除所述部分可用的转码资源与所述电子设备的关联关系。

上述电子设备提到的通信总线可以是外设部件互连标准(peripheralcomponentinterconnect,简称pci)总线或扩展工业标准结构(extendedindustrystandardarchitecture,简称eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口用于上述分屏显示装置与其他设备之间的通信。

存储器可以包括随机存取存储器(randomaccessmemory,简称ram),也可以包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(digitalsignalprocessing,简称dsp)、专用集成电路(applicationspecificintegratedcircuit,简称asic)、现场可编程门阵列(field-programmablegatearray,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的转码资源调度方法。

在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的转码资源调度方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk(ssd))等。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1