一种转码处理方法、装置及服务器的制造方法

文档序号:7811436阅读:216来源:国知局
一种转码处理方法、装置及服务器的制造方法
【专利摘要】本发明实施例提供一种转码处理方法、装置及服务器,其中的方法可包括:当接收到转码请求时,获取至少一个转码节点所组成的转码集群的空闲率;根据所述转码集群的空闲率,对所述至少一个转码节点进行随机负载分配处理,以从所述至少一个转码节点中选取响应转码节点;将所述转码请求发送至所述响应转码节点,以使所述响应转码节点根据所述转码请求进行转码处理。本发明可实现转码集群中各转码节点的负载均衡,同时保证转码质量。
【专利说明】一种转码处理方法、装置及服务器

【技术领域】
[0001]本发明涉及互联网【技术领域】,具体涉及多媒体处理【技术领域】,尤其涉及一种转码处理方法、装置及服务器。

【背景技术】
[0002]转码指将视频流由高分辨率转换为低分辨率、由高码率转换为低码率的处理。转码节点指具备转码功能的物理设备,例如:转码节点可以为具备转码功能的PC (PersonalComputer,个人计算机)、转码服务器等等。多个转码节点可组成转码集群,可通过调度转码集群中的转码节点实现均衡的转码功能。目前采用转码集群进行转码处理的方案主要包含以下两种,其中一种方案以随机均衡方式为基础,其转码处理过程为:在接收到转码请求时,从转码集群中随机选取一个转码节点进行转码处理。这种方案中,如果所选取的转码节点负载较高,则会降低转码质量。另一种方案以处理能力轮询作为基础,其转码处理过程为:在接收到转码请求时,从转码集群中选取负载最低的转码节点。这种方案中,如果需要转码处理的视频流数据较多时,将会使所选取的转码节点在短时间内负载剧增,同样会降低转码质量。


【发明内容】

[0003]本发明实施例提供一种转码处理方法、装置及服务器,可实现转码集群中各转码节点的负载均衡,同时保证转码质量。
[0004]本发明实施例第一方面提供一种转码处理方法,可包括:
[0005]当接收到转码请求时,获取至少一个转码节点所组成的转码集群的空闲率;
[0006]根据所述转码集群的空闲率,对所述至少一个转码节点进行随机负载分配处理,以从所述至少一个转码节点中选取响应转码节点;
[0007]将所述转码请求发送至所述响应转码节点,以使所述响应转码节点根据所述转码请求进行转码处理。
[0008]本发明实施例第二方面提供一种转码处理装置,可包括:
[0009]获取模块,用于当接收到转码请求时,获取至少一个转码节点所组成的转码集群的空闲率;
[0010]处理模块,用于根据所述转码集群的空闲率,对所述至少一个转码节点进行随机负载分配处理,以从所述至少一个转码节点中选取响应转码节点;
[0011]转码模块,用于将所述转码请求发送至所述响应转码节点,以使所述响应转码节点根据所述转码请求进行转码处理。
[0012]本发明实施例第三方面提供一种服务器,可包括上述第二方面提供的转码处理装置。
[0013]实施本发明实施例,具有如下有益效果:
[0014]本发明实施例中,在收到转码请求时,根据转码集群的空闲率对转码集群中的转码节点进行随机负载分配处理以选取响应转码节点完成转码处理。通过随机负载分配处理,可实现转码集群中各转码节点的负载均衡,使所述转码集群在较长的时间范围内,不存在空负载的转码节点,也不存在高负载的转码节点;同时可保证所述转码集群中各转码节点不会在短时间内负载剧增,保证转码质量。

【专利附图】

【附图说明】
[0015]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0016]图1为本发明实施例提供的一种转码处理方法的流程图;
[0017]图2为本发明实施例提供的另一种转码处理方法的流程图;
[0018]图3为本发明实施例提供的又一种转码处理方法的流程图;
[0019]图4为本发明实施例提供的一种转码处理装置的结构示意图;
[0020]图5为本发明实施例提供的另一种转码处理装置的结构示意图;
[0021]图6为本发明实施例提供的一种获取模块的结构示意图;
[0022]图7为本发明实施例提供的一种处理模块的结构示意图;
[0023]图8为本发明实施例提供的一种选取单元的结构示意图;
[0024]图9为本发明实施例提供的一种更新模块的结构示意图;
[0025]图10为本发明实施例提供的一种服务器的结构示意图。

【具体实施方式】
[0026]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0027]下面将结合附图1-附图3,对本发明实施例提供的转码处理方法进行详细介绍。
[0028]请参见图1,为本发明实施例提供的一种转码处理方法的流程图;该方法可包括以下步骤SlOl-步骤S103。
[0029]S101,当接收到转码请求时,获取至少一个转码节点所组成的转码集群的空闲率。
[0030]转码指将视频流由高分辨率转换为低分辨率、由高码率转换为低码率的处理。转码节点指具备转码功能的物理设备,例如:转码节点可以为具备转码功能的PC、转码服务器等等。至少一个转码节点可组成一个转码集群,通过对该转码集群的控制管理,可以灵活调度该转码集群的转码节点实现高效、均衡的转码功能。本发明实施例中,当需要由所述转码集群进行转码处理时,可以向转码集群发送转码请求,该转码请求中包含待转码的视频流信息,例如:用户使用诸如手机、笔记本电脑等终端的视频服务时,终端可以发起转码请求以向用户提供高速、实时的视频流服务;本步骤中,在接收到转码请求时,获取所述转码集群的空闲率。其中,所述转码集群的空闲率为所述转码集群中各转码节点的空闲率之和。所述转码集群的空闲率可表征所述转码集群的转码能力,所述转码集群的空闲率越高,表明所述转码集群的转码能力越高。
[0031]S102,根据所述转码集群的空闲率,对所述至少一个转码节点进行随机负载分配处理,以从所述至少一个转码节点中选取响应转码节点。
[0032]其中,随机负载分配处理的目的在于从所述转码集群中选取可用于响应所述转码请求、执行转码处理的响应转码节点,且该响应转码节点在执行转码处理时,既可满足所述转码集群的全局空闲率的要求,又能保证转码质量。需要说明的是,经过所述随机负载分配处理,可实现所述转码集群中各转码节点的负载均衡,使所述转码集群在较长的时间范围内,不存在空负载的转码节点,也不存在高负载的转码节点;同时可保证所述转码集群中各转码节点不会在短时间内负载剧增,保证转码质量。
[0033]S103,将所述转码请求发送至所述响应转码节点,以使所述响应转码节点根据所述转码请求进行转码处理。
[0034]本步骤中,将所述转码请求发送至所述响应转码节点之后,所述响应转码节点则可从所述转码请求中提取待转码的视频流信息,对该视频流信息进行转码处理。可以理解的是,当所述响应转码节点完成转码处理之后,本发明实施例还可将转码后的视频流返回至所述转码请求的发起方,例如:用户使用诸如手机、笔记本电脑等终端的视频服务时,终端可以发起转码请求以向用户提供高速、实时的视频流服务,本发明实施例在完成转码处理后,将转码后的视频流返回给所述终端,使所述终端能够向用户输出所述转码后的视频流以向用户提供高效、实时的视频服务。
[0035]本发明实施例中,在收到转码请求时,根据转码集群的空闲率对转码集群中的转码节点进行随机负载分配处理以选取响应转码节点完成转码处理。通过随机负载分配处理,可实现转码集群中各转码节点的负载均衡,使所述转码集群在较长的时间范围内,不存在空负载的转码节点,也不存在高负载的转码节点;同时可保证所述转码集群中各转码节点不会在短时间内负载剧增,保证转码质量。
[0036]请参见图2,为本发明实施例提供的另一种转码处理方法的流程图;该方法可包括以下步骤S201-步骤S204。
[0037]S201,当接收到转码请求时,获取至少一个转码节点所组成的转码集群的空闲率。
[0038]S202,根据所述转码集群的空闲率,对所述至少一个转码节点进行随机负载分配处理,以从所述至少一个转码节点中选取响应转码节点。
[0039]S203,将所述转码请求发送至所述响应转码节点,以使所述响应转码节点根据所述转码请求进行转码处理。
[0040]本实施例的步骤S201-步骤S203可参见图1所示实施例的步骤SlOl-步骤S103,在此不赘述。
[0041]S204,当检测到所述至少一个转码节点的负载发生变化时,更新所述转码集群的空闲率。
[0042]其中,所述转码集群的空闲率为所述转码集群中各转码节点的空闲率之和,即所述转码集群的空闲率与所述转码集群中各转码节点的空闲率均相关,然而,一个转码节点的空闲率与该转码节点的负载率之和为1,即一个转码节点的空闲率与该转码节点的负载率相关,因此,所述转码集群的空闲率与所述转码集群中各转码节点的负载均相关。本步骤中,当检测到所述转码集群中的转码节点的负载发生变化时,更新所述转码集群的空闲率。可以理解的是,本步骤对所述转码集群的空闲率的更新操作,可在后续再次接收到转码请求时的随机负载分配处理及转码处理的顺利进行,保证所述转码集群的全局负载均衡,保证转码质量。
[0043]本发明实施例中,在收到转码请求时,根据转码集群的空闲率对转码集群中的转码节点进行随机负载分配处理以选取响应转码节点完成转码处理。通过随机负载分配处理,可实现转码集群中各转码节点的负载均衡,使所述转码集群在较长的时间范围内,不存在空负载的转码节点,也不存在高负载的转码节点;同时可保证所述转码集群中各转码节点不会在短时间内负载剧增,保证转码质量。
[0044]请参见图3,为本发明实施例提供的又一种转码处理方法的流程图;该方法可包括以下步骤S301-步骤S312。
[0045]S301,当接收到转码请求时,获取所述至少一个转码节点中各转码节点的负载率。
[0046]转码节点的负载率指该转码节点的CPU在单位时间(例如:一分钟)内的平均负载量。本实施例中,假设总共有N(N为大于等于I的正整数)个转码节点,各转码节点的负载率分别为J1^ J2至jN,本步骤则获取J1^ J2至jN。
[0047]S302,根据所述各转码节点的负载率,计算所述各转码节点的空闲率。
[0048]一个转码节点的负载率与该转码节点的空闲率之和为I。本步骤采用“1-负载率=空闲率”的公式,依次计算各转码节点的空闲率;按照步骤S301所示例子,本步骤计算获取各转码节点的空闲率分别为“Ι-L = V,、“l-j2 = i2 ”至“l_jN = iN”。
[0049]S303,对所述各转码节点的空闲率进行求和计算,获得所述转码集群的空闲率。
[0050]本步骤求取所述各转码节点的空闲率之和,则可获得所述转码集群的空闲率。按照本实施例所示例子,假设所述转码集群的空闲率采用“I”表示,则I = ii+i2+…+iN。
[0051]本实施例的步骤S301-步骤S303可以为图1所示实施例的步骤SlOl的具体细化步骤,或者可以为图2所示实施例的步骤S201的具体细化步骤。
[0052]S304,采用预设数值范围内的随机数对所述转码集群的空闲率进行加权处理,获得随机分配数值。
[0053]其中,预设数值范围可以为[0.0,1.0),所述随机数可根据实际需要进行选取,例如:若要求所述转码集群的空闲率至少保留50%以保证全局负载均衡,则可在[0.0, 1.0)区间范围内选取大于0.5的随机数,诸如:0.51,0.6等等。本步骤中,可将所述转码集群的空闲率I乘以所选取的随机数,获得随机分配数值,该随机分配数值可采用“D”进行表示。
[0054]S305,获取所述各转码节点在所述转码集群中的接入顺序。
[0055]其中,所述转码集群中,一个转码节点对应一个接入顺序。在本发明实施例的一种可行的实施方式中,所述各转码节点在所述转码集群中的接入顺序可以根据实际需要进行设置,当所述转码集群动态调整时,例如:所述转码集群中接入新的转码节点,或者删除所述转码集群中的某些转码节点等等,可重新设置动态调整后的所述转码集群中各转码节点的接入顺序。在本发明实施例的另一种可行的实施方式中,所述各转码节点在所述转码集群中的接入顺序可以根据各转码节点实际接入所述转码集群中的时间先后进行设置,当所述转码集群动态调整时,例如:所述转码集群中接入新的转码节点,或者删除所述转码集群中的某些转码节点等等,可依据各转码节点实际接入所述转码集群中的时间先后对各转码节点的接入顺序进行动态调整。按照本实施例所示例子,假设N个转码节点中,空闲率为I1的转码节点的接入顺序为1,空闲率为i2的转码节点的接入顺序为2,以此类推,空闲率为iN的转码节点的接入顺序为N。
[0056]S306,按照所述各转码节点在所述转码集群中的接入顺序,将所述随机分配数值与所述各转码节点的空闲率进行递减运算。
[0057]按照本实施例所示例子,本步骤的递减运算过程为:将随机分配数值D逐个减去接入顺序为1-N的转码节点的空闲率,即首先采用公式“D-1/’获得差值Cl1,再采用公式“ Cl1-12 ”获得差值d2,按照此过程递减运算。
[0058]S307,根据所述递减运算结果,从所述至少一个转码节点中选取响应转码节点。
[0059]步骤S307具体可包括以下A-B步骤:
[0060]A、当所述随机分配数值与第一至第M-1个转码节点的空闲率进行递减运算获得的差值大于所述预设值,且所述随机分配数值与第一至第M个转码节点的空闲率进行递减运算获得的差值小于预设值时,从所述至少一个转码节点中选取第M个转码节点;其中,M为正整数;M的取值大于等于1,且小于等于所述至少一个转码节点的数量。
[0061]其中,所述预设值可根据实际需要进行设定,例如:所述预设值可设定为O。按照本实施例所示例子,M为正整数,且I彡M彡N。当递减运算过程中,采用公式“dM-1H”获得差值(V1,采用公式获得差值dM ;步骤A中,若‘ > O且dM < O,则选取第M个转码节点。
[0062]B、将所述第M个转码节点确定为响应转码节点。
[0063]所述响应转码节点可用于响应所述转码请求、执行转码处理,且该响应转码节点在执行转码处理时,既可满足使所述转码集群全局负载均衡的空闲率要求,又能保证转码质量。
[0064]本实施例的步骤S304-步骤S307可以为图1所示实施例的步骤S102的具体细化步骤,或者可以为图2所示实施例的步骤S202的具体细化步骤。需要说明的是,经过步骤S304-步骤S307所述的随机负载分配处理,可实现所述转码集群中各转码节点的负载均衡,使所述转码集群在较长的时间范围内,不存在空负载的转码节点,也不存在高负载的转码节点;同时可保证所述转码集群中各转码节点不会在短时间内负载剧增,保证转码质量。
[0065]S308,将所述转码请求发送至所述响应转码节点,以使所述响应转码节点根据所述转码请求进行转码处理。
[0066]本实施例的步骤S308可参见图1所示实施例的步骤S103,在此不赘述。
[0067]S309,当检测到所述至少一个转码节点中任一转码节点的负载发生变化时,接收变化转码节点上报的负载同步消息。
[0068]在本发明的一种可行的实施方式中,所述负载同步消息可以包含负载变化信息,例如:第I个转码节点增加了 5%的负载,该第I个转码节点上报的负载同步消息则可包含+5%的变化信息,用于指示该第I个转码节点负载增加5%。在本发明的另一种可行的实施方式中,所述负载同步消息可以包含负载变化后该转码节点的负载率,例如:第2个转码节点的原负载率为30%,该第2个转码节点的负载减少了 10%,则该第2个转码节点上报的负载同步消息可包含20%的负载率,用于指示该第2个转码节点负载减少后的负载率为20%。
[0069]S310,根据所述负载变化消息,更新所述变化转码节点的负载率。
[0070]S311,根据所述变化转码节点的负载率,计算所述变化转码节点的空闲率。
[0071]一个转码节点的负载率与该转码节点的空闲率之和为I。本步骤采用“1-负载率=空闲率”的公式,计算所述变化转码节点的空闲率。
[0072]S312,根据所述变化转码节点的空闲率,更新所述转码集群的空闲率。
[0073]本步骤需要考虑所述变化转码节点的空闲率,重新求取所述各转码节点的空闲率之和,则可更新所述转码集群的空闲率。可以理解的是,本步骤对所述转码集群的空闲率的更新操作,可在后续再次接收到转码请求时的随机负载分配处理及转码处理的顺利进行,保证所述转码集群的全局负载均衡,保证转码质量。
[0074]本实施例的步骤S309-步骤S312可以为图2所示实施例的步骤S204的具体细化步骤。
[0075]本发明实施例中,在收到转码请求时,根据转码集群的空闲率对转码集群中的转码节点进行随机负载分配处理以选取响应转码节点完成转码处理。通过随机负载分配处理,可实现转码集群中各转码节点的负载均衡,使所述转码集群在较长的时间范围内,不存在空负载的转码节点,也不存在高负载的转码节点;同时可保证所述转码集群中各转码节点不会在短时间内负载剧增,保证转码质量。
[0076]下面将结合附图4-附图9,对本发明实施例提供的一种转码处理装置进行详细介绍。需要说明的是,附图4-附图9所述的应用修复装置可应用于执行上述附图1-附图3所示的方法。
[0077]请参见图4,为本发明实施例提供的一种转码处理装置的结构示意图;该装置可包括:获取模块101、处理模块102和转码模块103。
[0078]获取模块101,用于当接收到转码请求时,获取至少一个转码节点所组成的转码集群的空闲率。
[0079]转码指将视频流由高分辨率转换为低分辨率、由高码率转换为低码率的处理。转码节点指具备转码功能的物理设备,例如:转码节点可以为具备转码功能的PC、转码服务器等等。至少一个转码节点可组成一个转码集群,通过对该转码集群的控制管理,可以灵活调度该转码集群的转码节点实现高效、均衡的转码功能。本发明实施例中,当需要由所述转码集群进行转码处理时,可以向转码集群发送转码请求,该转码请求中包含待转码的视频流信息,例如:用户使用诸如手机、笔记本电脑等终端的视频服务时,终端可以发起转码请求以向用户提供高速、实时的视频流服务;在接收到转码请求时,所述获取模块101获取所述转码集群的空闲率。其中,所述转码集群的空闲率为所述转码集群中各转码节点的空闲率之和。所述转码集群的空闲率可表征所述转码集群的转码能力,所述转码集群的空闲率越高,表明所述转码集群的转码能力越高。
[0080]处理模块102,用于根据所述转码集群的空闲率,对所述至少一个转码节点进行随机负载分配处理,以从所述至少一个转码节点中选取响应转码节点。
[0081]其中,随机负载分配处理的目的在于从所述转码集群中选取可用于响应所述转码请求、执行转码处理的响应转码节点,且该响应转码节点在执行转码处理时,既可满足所述转码集群的全局空闲率的要求,又能保证转码质量。需要说明的是,经过所述随机负载分配处理,可实现所述转码集群中各转码节点的负载均衡,使所述转码集群在较长的时间范围内,不存在空负载的转码节点,也不存在高负载的转码节点;同时可保证所述转码集群中各转码节点不会在短时间内负载剧增,保证转码质量。
[0082]转码模块103,用于将所述转码请求发送至所述响应转码节点,以使所述响应转码节点根据所述转码请求进行转码处理。
[0083]所述转码模块103将所述转码请求发送至所述响应转码节点之后,所述响应转码节点则可从所述转码请求中提取待转码的视频流信息,对该视频流信息进行转码处理。可以理解的是,当所述响应转码节点完成转码处理之后,本发明实施例还可将转码后的视频流返回至所述转码请求的发起方,例如:用户使用诸如手机、笔记本电脑等终端的视频服务时,终端可以发起转码请求以向用户提供高速、实时的视频流服务,本发明实施例在完成转码处理后,将转码后的视频流返回给所述终端,使所述终端能够向用户输出所述转码后的视频流以向用户提供高效、实时的视频服务。
[0084]本发明实施例中,在收到转码请求时,根据转码集群的空闲率对转码集群中的转码节点进行随机负载分配处理以选取响应转码节点完成转码处理。通过随机负载分配处理,可实现转码集群中各转码节点的负载均衡,使所述转码集群在较长的时间范围内,不存在空负载的转码节点,也不存在高负载的转码节点;同时可保证所述转码集群中各转码节点不会在短时间内负载剧增,保证转码质量。
[0085]请参见图5,为本发明实施例提供的另一种转码处理装置的结构示意图;该装置可包括:获取模块101、处理模块102、转码模块103和更新模块104。其中,获取模块101、处理模块102和转码模块103的结构和功能可参见图4所示实施例的相关描述,在此不赘述。
[0086]更新模块104,用于当检测到所述至少一个转码节点的负载发生变化时,更新所述转码集群的空闲率。
[0087]其中,所述转码集群的空闲率为所述转码集群中各转码节点的空闲率之和,即所述转码集群的空闲率与所述转码集群中各转码节点的空闲率均相关,然而,一个转码节点的空闲率与该转码节点的负载率之和为1,即一个转码节点的空闲率与该转码节点的负载率相关,因此,所述转码集群的空闲率与所述转码集群中各转码节点的负载均相关。当检测到所述转码集群中的转码节点的负载发生变化时,所述更新模块104更新所述转码集群的空闲率。可以理解的是,所述更新模块104对所述转码集群的空闲率的更新操作,可在后续再次接收到转码请求时的随机负载分配处理及转码处理的顺利进行,保证所述转码集群的全局负载均衡,保证转码质量。
[0088]本发明实施例中,在收到转码请求时,根据转码集群的空闲率对转码集群中的转码节点进行随机负载分配处理以选取响应转码节点完成转码处理。通过随机负载分配处理,可实现转码集群中各转码节点的负载均衡,使所述转码集群在较长的时间范围内,不存在空负载的转码节点,也不存在高负载的转码节点;同时可保证所述转码集群中各转码节点不会在短时间内负载剧增,保证转码质量。
[0089]请参见图6,为本发明实施例提供的一种获取模块的结构示意图;该获取模块101可包括:负载获取单元1101、空闲计算单元1102和求和计算单元1103。
[0090]负载获取单元1101,用于当接收到转码请求时,获取所述至少一个转码节点中各转码节点的负载率。
[0091 ] 转码节点的负载率指该转码节点的CPU在单位时间(例如:一分钟)内的平均负载量。本实施例中,假设总共有N(N为大于等于I的正整数)个转码节点,各转码节点的负载率分别为J2至jN,所述负载获取单元1101则获取J2至jN。
[0092]空闲计算单元1102,用于根据所述各转码节点的负载率,计算所述各转码节点的空闲率。
[0093]一个转码节点的负载率与该转码节点的空闲率之和为I。所述空闲计算单元1102采用“1-负载率=空闲率”的公式,依次计算各转码节点的空闲率;按照本实施例所示例子,所述空闲计算单元1102计算获取各转码节点的空闲率分别为“1-ji = I1Vi1-J2 = i2”至“卜jN= iN,,。
[0094]求和计算单元1103,用于对所述各转码节点的空闲率进行求和计算,获得所述转码集群的空闲率。
[0095]所述求和计算单元1103求取所述各转码节点的空闲率之和,则可获得所述转码集群的空闲率。按照本实施例所示例子,假设所述转码集群的空闲率采用“I”表示,则I =
-- + ?2 + ***+?Ν°
[0096]本发明实施例中,在收到转码请求时,根据转码集群的空闲率对转码集群中的转码节点进行随机负载分配处理以选取响应转码节点完成转码处理。通过随机负载分配处理,可实现转码集群中各转码节点的负载均衡,使所述转码集群在较长的时间范围内,不存在空负载的转码节点,也不存在高负载的转码节点;同时可保证所述转码集群中各转码节点不会在短时间内负载剧增,保证转码质量。
[0097]请参见图7,为本发明实施例提供的一种处理模块的结构示意图;该处理模块102可包括:加权处理单元1201、顺序获取单元1202、递减运算单元1203和选取单元1204。
[0098]加权处理单元1201,用于采用预设数值范围内的随机数对所述转码集群的空闲率进行加权处理,获得随机分配数值。
[0099]其中,预设数值范围可以为[0.0,1.0),所述随机数可根据实际需要进行选取,例如:若要求所述转码集群的空闲率至少保留50%以保证全局负载均衡,则可在[0.0, 1.0)区间范围内选取大于0.5的随机数,诸如:0.51,0.6等等。按照图6所示实施例中的例子,所述加权处理单元1201可将所述转码集群的空闲率I乘以所选取的随机数,获得随机分配数值,该随机分配数值可采用“D”进行表示。
[0100]顺序获取单元1202,用于获取所述各转码节点在所述转码集群中的接入顺序。
[0101]其中,所述转码集群中,一个转码节点对应一个接入顺序。在本发明实施例的一种可行的实施方式中,所述各转码节点在所述转码集群中的接入顺序可以根据实际需要进行设置,当所述转码集群动态调整时,例如:所述转码集群中接入新的转码节点,或者删除所述转码集群中的某些转码节点等等,可重新设置动态调整后的所述转码集群中各转码节点的接入顺序。在本发明实施例的另一种可行的实施方式中,所述各转码节点在所述转码集群中的接入顺序可以根据各转码节点实际接入所述转码集群中的时间先后进行设置,当所述转码集群动态调整时,例如:所述转码集群中接入新的转码节点,或者删除所述转码集群中的某些转码节点等等,可依据各转码节点实际接入所述转码集群中的时间先后对各转码节点的接入顺序进行动态调整。按照本实施例所示例子,假设N个转码节点中,空闲率为I1的转码节点的接入顺序为1,空闲率为i2的转码节点的接入顺序为2,以此类推,空闲率为iN的转码节点的接入顺序为N。
[0102]递减运算单元1203,用于按照所述各转码节点在所述转码集群中的接入顺序,将所述随机分配数值与所述各转码节点的空闲率进行递减运算。
[0103]按照本实施例所示例子,所述递减运算单元1203的递减运算过程为:将随机分配数值D逐个减去接入顺序为1-N的转码节点的空闲率,即首先采用公式“D-h”获得差值屯,再采用公式“ Cl1-12 ”获得差值d2,按照此过程递减运算。
[0104]选取单元1204,用于根据所述递减运算结果,从所述至少一个转码节点中选取响应转码节点。
[0105]具体实现中,请一并参见图8,为本发明实施例提供的一种选取单元的结构示意图;该选取单元1204可包括:节点选取子单元1241和节点确定子单元1242。
[0106]节点选取子单元1241,用于当所述随机分配数值与第一至第M-1个转码节点的空闲率进行递减运算获得的差值大于所述预设值,且所述随机分配数值与第一至第M个转码节点的空闲率进行递减运算获得的差值小于预设值时,从所述至少一个转码节点中选取第M个转码节点。
[0107]其中,所述预设值可根据实际需要进行设定,例如:所述预设值可设定为O。按照本实施例所示例子,M为正整数,且I彡M彡N。当递减运算过程中,采用公式“dM-1H”获得差值(V1,采用公式“‘-1/获得差值dM ;若‘ > O且dM < 0,所述节点选取子单元1241则选取第M个转码节点。
[0108]节点确定子单元1242,用于将所述第M个转码节点确定为响应转码节点。
[0109]所述响应转码节点可用于响应所述转码请求、执行转码处理,且该响应转码节点在执行转码处理时,既可满足使所述转码集群全局负载均衡的空闲率要求,又能保证转码质量。
[0110]本发明实施例中,在收到转码请求时,根据转码集群的空闲率对转码集群中的转码节点进行随机负载分配处理以选取响应转码节点完成转码处理。通过随机负载分配处理,可实现转码集群中各转码节点的负载均衡,使所述转码集群在较长的时间范围内,不存在空负载的转码节点,也不存在高负载的转码节点;同时可保证所述转码集群中各转码节点不会在短时间内负载剧增,保证转码质量。
[0111]请参见图9,为本发明实施例提供的一种更新模块的结构示意图;该更新模块104可包括:消息接收单元1401、负载更新单元1402、变化计算单元1403和更新单元1404。
[0112]消息接收单元1401,用于当检测到所述至少一个转码节点中任一转码节点的负载发生变化时,接收变化转码节点上报的负载同步消息。
[0113]在本发明的一种可行的实施方式中,所述负载同步消息可以包含负载变化信息,例如:第I个转码节点增加了 5%的负载,该第I个转码节点上报的负载同步消息则可包含+5%的变化信息,用于指示该第I个转码节点负载增加5%。在本发明的另一种可行的实施方式中,所述负载同步消息可以包含负载变化后该转码节点的负载率,例如:第2个转码节点的原负载率为30%,该第2个转码节点的负载减少了 10%,则该第2个转码节点上报的负载同步消息可包含20%的负载率,用于指示该第2个转码节点负载减少后的负载率为20%。
[0114]负载更新单元1402,用于根据所述负载变化消息,更新所述变化转码节点的负载率。
[0115]变化计算单元1403,用于根据所述变化转码节点的负载率,计算所述变化转码节点的空闲率。
[0116]一个转码节点的负载率与该转码节点的空闲率之和为I。所述变化计算单元1403采用“1-负载率=空闲率”的公式,计算所述变化转码节点的空闲率。
[0117]更新单元1404,用于根据所述变化转码节点的空闲率,更新所述转码集群的空闲率。
[0118]所述更新单元1404需要考虑所述变化转码节点的空闲率,重新求取所述各转码节点的空闲率之和,则可更新所述转码集群的空闲率。可以理解的是,所述更新单元1404对所述转码集群的空闲率的更新操作,可在后续再次接收到转码请求时的随机负载分配处理及转码处理的顺利进行,保证所述转码集群的全局负载均衡,保证转码质量。
[0119]本发明实施例中,在收到转码请求时,根据转码集群的空闲率对转码集群中的转码节点进行随机负载分配处理以选取响应转码节点完成转码处理。通过随机负载分配处理,可实现转码集群中各转码节点的负载均衡,使所述转码集群在较长的时间范围内,不存在空负载的转码节点,也不存在高负载的转码节点;同时可保证所述转码集群中各转码节点不会在短时间内负载剧增,保证转码质量。
[0120]本发明实施例还公开了一种服务器,该服务器可以为转码管理节点,其可用于管理所述转码集群,该服务器可包括一种转码处理装置,该转码处理装置的结构和功能可参见图4-图9所示实施例的相关描述,在此不赘述。
[0121]本发明实施例中,在收到转码请求时,根据转码集群的空闲率对转码集群中的转码节点进行随机负载分配处理以选取响应转码节点完成转码处理。通过随机负载分配处理,可实现转码集群中各转码节点的负载均衡,使所述转码集群在较长的时间范围内,不存在空负载的转码节点,也不存在高负载的转码节点;同时可保证所述转码集群中各转码节点不会在短时间内负载剧增,保证转码质量。
[0122]请参见图10,为本发明实施例提供的一种服务器的结构示意图;本发明实施例的服务器包括:至少一个处理器201,例如CPU,至少一个通信总线202,至少一个网络接口203,存储器204。其中,通信总线202用于实现这些组件之间的连接通信。其中,所述网络接口 203可选的可以包括标准的有线接口、无线接口(如W1-F1、移动通信接口等)。所述存储器204可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。所述存储器204可选的还可以是至少一个位于远离前述处理器201的存储装置。如图10所示,作为一种计算机存储介质的存储器204中存储有操作系统、网络通信模块,并存储有用于进行转码处理的程序以及其他程序。
[0123]在一种可行的实施方式中,其中具体的,所述处理器201可以用于调用所述存储器204中存储的用于进行转码处理的程序,执行以下步骤:
[0124]当接收到转码请求时,获取至少一个转码节点所组成的转码集群的空闲率;
[0125]根据所述转码集群的空闲率,对所述至少一个转码节点进行随机负载分配处理,以从所述至少一个转码节点中选取响应转码节点;
[0126]将所述转码请求发送至所述响应转码节点,以使所述响应转码节点根据所述转码请求进行转码处理。
[0127]进一步,所述处理器204在执行所述当接收到转码请求时,获取至少一个转码节点所组成的转码集群的空闲率的步骤时,具体执行如下步骤:
[0128]当接收到转码请求时,获取所述至少一个转码节点中各转码节点的负载率;
[0129]根据所述各转码节点的负载率,计算所述各转码节点的空闲率;
[0130]对所述各转码节点的空闲率进行求和计算,获得所述转码集群的空闲率。
[0131]进一步,所述处理器204在执行所述根据所述转码集群的空闲率,对所述至少一个转码节点进行随机负载分配处理,以从所述至少一个转码节点中选取响应转码节点的步骤时,具体执行如下步骤:
[0132]采用预设数值范围内的随机数对所述转码集群的空闲率进行加权处理,获得随机分配数值;
[0133]获取所述各转码节点在所述转码集群中的接入顺序;
[0134]按照所述各转码节点在所述转码集群中的接入顺序,将所述随机分配数值与所述各转码节点的空闲率进行递减运算;
[0135]根据所述递减运算结果,从所述至少一个转码节点中选取响应转码节点。
[0136]进一步,所述处理器204在执行所述根据所述递减运算结果,从所述至少一个转码节点中选取响应转码节点的步骤时,具体执行如下步骤:
[0137]当所述随机分配数值与第一至第M-1个转码节点的空闲率进行递减运算获得的差值大于所述预设值,且所述随机分配数值与第一至第M个转码节点的空闲率进行递减运算获得的差值小于预设值时,从所述至少一个转码节点中选取第M个转码节点;
[0138]将所述第M个转码节点确定为响应转码节点;
[0139]其中,M为正整数;M的取值大于等于1,且小于等于所述至少一个转码节点的数量。
[0140]进一步,所述处理器204在执行所述将所述转码请求发送至所述响应转码节点,以使所述响应转码节点根据所述转码请求进行转码处理的步骤之后,还执行如下步骤:
[0141]当检测到所述至少一个转码节点的负载发生变化时,更新所述转码集群的空闲率。
[0142]进一步,所述处理器204在执行所述当检测到所述至少一个转码节点的负载发生变化时,更新所述转码集群的空闲率的步骤时,具体执行如下步骤:
[0143]当检测到所述至少一个转码节点中任一转码节点的负载发生变化时,接收变化转码节点上报的负载同步消息;
[0144]根据所述负载变化消息,更新所述变化转码节点的负载率;
[0145]根据所述变化转码节点的负载率,计算所述变化转码节点的空闲率;
[0146]根据所述变化转码节点的空闲率,更新所述转码集群的空闲率。
[0147]本发明实施例中,在收到转码请求时,根据转码集群的空闲率对转码集群中的转码节点进行随机负载分配处理以选取响应转码节点完成转码处理。通过随机负载分配处理,可实现转码集群中各转码节点的负载均衡,使所述转码集群在较长的时间范围内,不存在空负载的转码节点,也不存在高负载的转码节点;同时可保证所述转码集群中各转码节点不会在短时间内负载剧增,保证转码质量。
[0148]本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random AccessMemory, RAM)等。
[0149]以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
【权利要求】
1.一种转码处理方法,其特征在于,包括: 当接收到转码请求时,获取至少一个转码节点所组成的转码集群的空闲率; 根据所述转码集群的空闲率,对所述至少一个转码节点进行随机负载分配处理,以从所述至少一个转码节点中选取响应转码节点; 将所述转码请求发送至所述响应转码节点,以使所述响应转码节点根据所述转码请求进行转码处理。
2.如权利要求1所述的方法,其特征在于,所述当接收到转码请求时,获取至少一个转码节点所组成的转码集群的空闲率,包括: 当接收到转码请求时,获取所述至少一个转码节点中各转码节点的负载率; 根据所述各转码节点的负载率,计算所述各转码节点的空闲率; 对所述各转码节点的空闲率进行求和计算,获得所述转码集群的空闲率。
3.如权利要求2所述的方法,其特征在于,所述根据所述转码集群的空闲率,对所述至少一个转码节点进行随机负载分配处理,以从所述至少一个转码节点中选取响应转码节点,包括: 采用预设数值范围内的随机数对所述转码集群的空闲率进行加权处理,获得随机分配数值; 获取所述各转码节点在所述转码集群中的接入顺序; 按照所述各转码节点在所述转码集群中的接入顺序,将所述随机分配数值与所述各转码节点的空闲率进行递减运算; 根据所述递减运算结果,从所述至少一个转码节点中选取响应转码节点。
4.如权利要求3所述的方法,其特征在于,所述根据所述递减运算结果,从所述至少一个转码节点中选取响应转码节点,包括: 当所述随机分配数值与第一至第M-1个转码节点的空闲率进行递减运算获得的差值大于所述预设值,且所述随机分配数值与第一至第M个转码节点的空闲率进行递减运算获得的差值小于预设值时,从所述至少一个转码节点中选取第M个转码节点; 将所述第M个转码节点确定为响应转码节点; 其中,M为正整数⑷的取值大于等于1,且小于等于所述至少一个转码节点的数量。
5.如权利要求1-4任一项所述的方法,其特征在于,所述将所述转码请求发送至所述响应转码节点,以使所述响应转码节点根据所述转码请求进行转码处理之后,还包括: 当检测到所述至少一个转码节点的负载发生变化时,更新所述转码集群的空闲率。
6.如权利要求5所述的方法,其特征在于,所述当检测到所述至少一个转码节点的负载发生变化时,更新所述转码集群的空闲率,包括: 当检测到所述至少一个转码节点中任一转码节点的负载发生变化时,接收变化转码节点上报的负载同步消息; 根据所述负载变化消息,更新所述变化转码节点的负载率; 根据所述变化转码节点的负载率,计算所述变化转码节点的空闲率; 根据所述变化转码节点的空闲率,更新所述转码集群的空闲率。
7.一种转码处理装置,其特征在于,包括: 获取模块,用于当接收到转码请求时,获取至少一个转码节点所组成的转码集群的空闲率; 处理模块,用于根据所述转码集群的空闲率,对所述至少一个转码节点进行随机负载分配处理,以从所述至少一个转码节点中选取响应转码节点; 转码模块,用于将所述转码请求发送至所述响应转码节点,以使所述响应转码节点根据所述转码请求进行转码处理。
8.如权利要求7所述的装置,其特征在于,所述获取模块包括: 负载获取单元,用于当接收到转码请求时,获取所述至少一个转码节点中各转码节点的负载率; 空闲计算单元,用于根据所述各转码节点的负载率,计算所述各转码节点的空闲率; 求和计算单元,用于对所述各转码节点的空闲率进行求和计算,获得所述转码集群的空闲率。
9.如权利要求8所述的装置,其特征在于,所述处理模块包括: 加权处理单元,用于采用预设数值范围内的随机数对所述转码集群的空闲率进行加权处理,获得随机分配数值; 顺序获取单元,用于获取所述各转码节点在所述转码集群中的接入顺序; 递减运算单元,用于按照所述各转码节点在所述转码集群中的接入顺序,将所述随机分配数值与所述各转码节点的空闲率进行递减运算; 选取单元,用于根据所述递减运算结果,从所述至少一个转码节点中选取响应转码节点。
10.如权利要求9所述的装置,其特征在于,所述选取单元包括: 节点选取子单元,用于当所述随机分配数值与第一至第M-1个转码节点的空闲率进行递减运算获得的差值大于所述预设值,且所述随机分配数值与第一至第M个转码节点的空闲率进行递减运算获得的差值小于预设值时,从所述至少一个转码节点中选取第M个转码节点; 节点确定子单元,用于将所述第M个转码节点确定为响应转码节点; 其中,M为正整数;M的取值大于等于1,且小于等于所述至少一个转码节点的数量。
11.如权利要求7-10任一项所述的装置,其特征在于,还包括: 更新模块,用于当检测到所述至少一个转码节点的负载发生变化时,更新所述转码集群的空闲率。
12.如权利要求11所述的装置,其特征在于,所述更新模块包括: 消息接收单元,用于当检测到所述至少一个转码节点中任一转码节点的负载发生变化时,接收变化转码节点上报的负载同步消息; 负载更新单元,用于根据所述负载变化消息,更新所述变化转码节点的负载率; 变化计算单元,用于根据所述变化转码节点的负载率,计算所述变化转码节点的空闲率; 更新单元,用于根据所述变化转码节点的空闲率,更新所述转码集群的空闲率。
13.一种服务器,其特征在于,包括如权利要求7-12任一项所述的转码处理装置。
【文档编号】H04L29/06GK104202305SQ201410397925
【公开日】2014年12月10日 申请日期:2014年8月13日 优先权日:2014年8月13日
【发明者】管坤, 曾新海 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1