流媒体直播方法及系统与流程

文档序号:17152339发布日期:2019-03-19 23:33阅读:614来源:国知局
流媒体直播方法及系统与流程

本发明涉及多媒体技术领域,尤其涉及一种流媒体直播方法及系统。



背景技术:

网络直播可以使得用户将正在录制的视频同步发布到网络,并供网络中的其他用户同步观看。

现有技术中,在进行网络直播,需要借助市场上已有的云直播平台,用户可以通过云直播平台来发布直播和观看直播。例如,在使用无人机进行电力巡检等工作时,无人机在沿着预定航线飞行的同时会拍摄视频并回传,可以借助云直播平台,使得用户可以通过云直播平台实时观测无人机所传回的图像数据。然而,目前的网络直播平台一般只在公网上接入,受制于无人机行业用户本身的属性,其通过无人机获取的图像数据往往较为敏感和重要。因此,常常需要搭建可在内网、局域网或者外网之间互用的直播平台。然而这种直播平台常常会应为接入用户过多或其他临时性的问题,而造成直播平台工作效率低下,无法保证用户的请求而具有较差的鲁棒性。

因此,在进行网络直播时,如何在确保直播的安全性的同时保证直播的鲁棒性,成为目前亟待解决的问题。



技术实现要素:

本发明提供一种流媒体直播方法及系统,用于解决现有技术中如何在确保直播的安全性的同时保证直播的鲁棒性的问题。

本发明第一方面提供一种流媒体直播方法,应用于负载均衡层,所述方法包括:

接收终端发送的直播请求,所述直播请求包括推流请求或拉流请求;

从至少两个流媒体服务器中选择处理所述直播请求的流媒体服务器,并将所述直播请求转发至所选择的流媒体服务器,以使所述流媒体服务器根据所述直播请求向所述终端提供直播服务。

本发明第二方面提供一种流媒体直播方法,应用于流媒体服务器,所述方法包括:

接收负载均衡层转发的终端的直播请求,所述直播请求包括推流请求或拉流请求;

根据所述直播请求,向所述终端提供直播服务。

本发明第三方面提供一种流媒体直播方法,包括:

负载均衡层接收终端发送的直播请求;

所述负载均衡层从至少两个流媒体服务器中,选择处理所述直播请求的流媒体服务器,并将所述直播请求转发至所选择的流媒体服务器;

所述流媒体服务器根据所述直播请求,向所述终端提供直播服务。

本发明第四方面提供一种流媒体直播系统,应用于负载均衡层,包括:

通信接口,用于接收终端发送的直播请求,所述直播请求包括推流请求或拉流请求;

第一处理器,用于从至少两个流媒体服务器中选择处理所述直播请求的流媒体服务器;

所述通信接口,还用于将所述直播请求转发至所选择的流媒体服务器,以使所述流媒体服务器根据所述直播请求向所述终端提供直播服务。

本发明第五方面提供一种流媒体直播系统,应用于流媒体服务器,包括:

通信接口,用于接收负载均衡层转发的终端的直播请求,所述直播请求包括推流请求或拉流请求;

处理器,用于根据所述直播请求,向所述终端提供直播服务。

本发明第六方面提供一种流媒体直播系统,包括:负载均衡层和至少两个流媒体设备;其中,

负载均衡层,用于接收终端发送的直播请求;

所述负载均衡层,还用于从所述至少两个流媒体服务器中,选择处理所述直播请求的流媒体服务器,并将所述直播请求转发至所选择的流媒体服务器;

所述流媒体服务器,用于根据所述直播请求,向所述终端提供直播服务。

本发明提供的流媒体直播方法及系统,通过负载均衡层接收终端发送的直播请求,所述负载均衡层从至少两个流媒体服务器中选择处理所述直播请求的流媒体服务器,并将所述直播请求转发至所选择的流媒体服务器,以使所述流媒体服务器根据所述直播请求向所述终端提供直播服务,实现了将终端发送的直播请求转发至多个流媒体服务器中的一个,以便流媒体服务器向用户提供直播服务的直播功能,避免了使用已有的云直播平台时,由于已有的云直播平台的未知性、不可掌控性而导致直播的安全性较低的问题,提高了直播的安全性。同时,通过负载均衡层从至少两个流媒体服务器中选择处理直播请求的流媒体服务器,使得当某一流媒体服务器故障时,可以由其他流媒体服务器提供直播服务,从而能够确保直播的鲁棒性。因此,本发明提供的流媒体直播方法及系统能够在确保直播的安全性的同时保证直播的鲁棒性

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明提供流媒体直播方法应用的系统的架构图;

图2为本发明提供的流媒体直播方法实施例一的流程图;

图3为本发明提供的流媒体直播方法实施例二的流程图;

图4为本发明提供的流媒体直播方法实施例三的流程图;

图5为本发明提供的流媒体直播方法实施例四的流程图;

图6为本发明实施例提供的流媒体直播系统实施例一的结构示意图;

图7为本发明实施例提供的流媒体直播系统实施例二的结构示意图;

图8为本发明实施例提供的流媒体直播系统实施例三的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

下面结合附图,对本发明的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。

图1为本发明提供流媒体直播方法应用的系统的架构图。如图1所示,该系统可以包括:终端、负载均衡层和至少两个流媒体服务器。其中,终端与负载均衡层之间通信连接,负载均衡层与流媒体服务器之间通信连接。终端具体可以为智能手机、遥控器、平板电脑、膝上型电脑、穿戴式设备(手表、手环)中的一种或多种。负载均衡层完成直播业务相关的负载均衡的功能,具体的,接收终端发送的直播请求,例如推流请求或拉流请求,并从至少两个流媒体服务器中选择处理该直播请求的流媒体服务器,并将该直播请求转发至所选择的流媒体服务器。所述流媒体服务器具体可以为能够提供直播服务的服务器,例如wowza流媒体服务器,本发明对此并不作限制。这里,推流(upstreaming)是指将终端将本地采集的语音流或视频流推送到流媒体服务器。拉流(downstreaming)是指终端从流媒体服务器拉取语音流或视频流。

需要说明的是,负载均衡层具体可以包括一个设备或多个设备,本发明对此并不作限制。可选的,负载均衡层可以包括:代理服务器。此时,可以由代理服务器完成接收直播请求,选择处理直播请求的流媒体服务器并将直播请求转发至所选择的流媒体服务器的功能。

或者,可选的,如图1所示,负载均衡层可以包括:代理服务器和负载均衡器。此时,可以由代理服务器完成接收直播请求的功能,并进一步的将所接收到的直播请求转发至负载均衡器,进一步的,由负载均衡器完成选择处理直播请求的流媒体服务器并将直播请求转发至所选择的流媒体服务器的功能。这里,通过负载均衡层包括代理服务器和负载均衡器,可以隐藏实际进行业务处理的服务器,即负载均衡器的地址信息,防止实际进行业务处理被黑客攻击,提高安全性。

进一步可选的,如图1所示,负载均衡器的个数可以为多个,多个负载均衡器可以实现分担负载的功能,也可以实现容灾的功能。对于容灾功能,具体的,多个负载均衡器均可以与所有流媒体服务器通信连接,对于多个负载均衡器中的一个负载均衡器,其他负载均衡器都可以作为该负载均衡器的备份负载均衡器。对于分担负载的功能,具体的,可以配置正常工作时,多个负载均衡器之间的分担负载的比例。例如,负载均衡器1与负载均衡器2之间的分担负载的比例为1:1,可以认为正常工作时,负载均衡器1和负载均衡器2分别分担50%的负载。又例如,负载均衡器1与负载均衡器2之间的分担负载的比例为1:0,可以认为负载均衡器1分担100%(即,全部)负载,负载均衡器2仅作为备份负载均衡器。

需要说明的是,图1中以负载均衡器的个数为两个,流媒体服务器的个数为3个为例。

图2为本发明提供的流媒体直播方法实施例一的流程图。如图2所示,本实施例的方法可以包括:

步骤201,负载均衡层接收终端发送的直播请求,所述直播请求包括推流请求或拉流请求。

本步骤中,具体可以由所述负载均衡层的通信接口接收终端发送的直播请求。当用户打开终端的发布直播功能时,终端可以向负载均衡层发送推流请求,此时负载均衡层接收终端发送的推流请求。当用户打开终端的观看直播功能时,终端可以向负载均衡层发送拉流请求,此时负载均衡层接收终端发送的拉流请求。可选的,当负载均衡层包括代理服务器时,可以由所述代理服务器的通信接口接收终端发送的直播请求。

步骤202,所述负载均衡层从至少两个流媒体服务器中选择处理所述直播请求的流媒体服务器,并将所述直播请求转发至所选择的流媒体服务器,以使所述流媒体服务器根据所述直播请求向所述终端提供直播服务。

本步骤中,所述至少两个流媒体服务器均可以提供直播服务,负载均衡层可以从所述至少两个流媒体服务器中选择一个流媒体服务器作为处理所述直播请求的流媒体服务器。通过负载均衡层从多个流媒体服务器中选择处理所述直播请求的流媒体服务器,使得当某一流媒体服务器故障时,可以由其他流媒体服务器提供直播服务,从而能够确保直播的鲁棒性。另外,通过负载均衡层从多个流媒体服务器中选择处理所述直播请求的流媒体服务器,还可以实现分担负载的功能,负载均衡层通过在多个流媒体服务器中选择处理直播请求的流媒体服务器,从而实现该多个流媒体服务器的负载均衡。具体的,所述负载均衡层可以根据轮训策略,从至少两个流媒体服务器中选择处理所述直播请求的流媒体服务器,来实现该至少两个流媒体服务器的负载均衡;或者,所述负载均衡层也可以根据负载均衡策略,从至少两个流媒体服务器中选择处理所述直播请求的流媒体服务器,来实现该至少两个流媒体服务器的负载均衡。

本步骤中,具体可以通过所述负载均衡层的通信接口,将所述直播请求转发至所选择的流媒体服务器。可选的,当由代理服务器从至少两个流媒体服务器中选择处理所述直播请求的流媒体服务器包括代理服务器时,可以通过代理服务器的通信接口将所述直播请求转发至所选择的流媒体服务器;当由负载均衡器从至少两个流媒体服务器中选择处理所述直播请求的流媒体服务器包括代理服务器时,可以通过负载均衡器的通信接口将所述直播请求转发至所选择的流媒体服务器。

本实施例中,通过负载均衡层接收终端发送的直播请求,所述负载均衡层从至少两个流媒体服务器中选择处理所述直播请求的流媒体服务器,并将所述直播请求转发至所选择的流媒体服务器,以使所述流媒体服务器根据所述直播请求向所述终端提供直播服务,实现了将终端发送的直播请求转发至多个流媒体服务器中的一个,以便流媒体服务器向用户提供直播服务的直播功能,避免了使用已有的云直播平台时,由于已有的云直播平台的未知性、不可掌控性而导致直播的安全性较低的问题,提高了直播的安全性。同时,通过负载均衡层从至少两个流媒体服务器中选择处理直播请求的流媒体服务器,使得当某一流媒体服务器故障时,可以由其他流媒体服务器提供直播服务,从而能够确保直播的鲁棒性。因此,本实施例提供的方法能够在确保直播的安全性的同时保证直播的鲁棒性。

需要说明的是,负载均衡层、终端以及流媒体服务器之间的通信网络可以包括公网或内网,本发明对此并不作限制。通过负载均衡层、终端以及流媒体服务器之间的通信网络为内网,可以避免外网中的设备对终端、负载均衡层以及流媒体服务器的非法访问,从而进一步提高了安全性。

图3为本发明提供的流媒体直播方法实施例二的流程图。如图3所示,本实施例的方法可以包括:

步骤301,流媒体服务器接收负载均衡层转发的终端的直播请求,所述直播请求包括推流请求或拉流请求。

本步骤中,可以由流媒体服务器的通信接口接收负载均衡层转发的终端的直播请求。具体的,可以由流媒体服务器的通信接口接收代理服务器或负载均衡器的通信接口转发的终端的直播请求。需要说明的是,该所述流媒体服务器为负载均衡层从至少两个流媒体服务器中选择的流媒体服务器。

步骤302,所述流媒体服务器根据所述直播请求,向所述终端提供直播服务。

本步骤中,所述直播服务具体可以为发布直播服务或观看直播服务。具体的,当所述直播请求为推流请求时,所述流媒体服务器向所述终端提供发布直播服务。此时,终端可以将本地采集的语音流或视频流推送到流媒体服务器。当所述直播请求为拉流请求时,所述流媒体服务器向所述终端提供观看直播服务。此时,终端可以从流媒体服务器拉取语音流或视频流。

本实施例中,通过流媒体服务器接收负载均衡层转发的终端的直播请求,所述流媒体服务器根据所述直播请求,向所述终端提供直播服务,实现了流媒体服务器根据终端发送的直播请求向用户提供直播服务的直播功能,避免了使用已有云的直播平台时,由于已有的云直播平台的未知性、不可掌控性而导致直播的安全性较低的问题,提高了直播的安全性。另外,由于接收负载均衡层转发的终端的直播请求的流媒体服务器为负载均衡层从至少两个流媒体服务器中选择的流媒体服务器,从而能够确保直播的鲁棒性。因此,本实施例提供的方法能够在确保直播的安全性的同时保证直播的鲁棒性。

图4为本发明提供的流媒体直播方法实施例三的流程图。本实施例在图1和图2所示实施例的基础上,主要描述了负载均衡层与流媒体服务器之间的交互过程。如图4所示,本实施例的方法可以包括:

步骤401,负载均衡层接收终端发送的直播请求,所述直播请求包括推流请求或拉流请求。

需要说明的是,步骤401与步骤201类似,在此不再赘述。

步骤402,所述负载均衡层根据所述至少两个流媒体服务器各自的剩余负载能力,从所述至少两个流媒体服务器中,选择剩余负载能力超过预设阈值的流媒体服务器为处理所述直播请求的流媒体服务器,并将所述直播请求转发至所选择的流媒体服务器。

本步骤中,当剩余负载能力超过预设阈值的流媒体服务器的个数为多个时,可以在剩余负载能力超过预设阈值的多个流媒体服务器中随机选择流媒体服务器作为处理所述直播请求的流媒体服务器,或者,也可以选择剩余负载能力超过预设阈值的多个流媒体服务器中剩余负载能力最大的流媒体服务器作为处理所述直播请求的流媒体服务器,本发明对此并不作限制。其中,所述预设阈值可以根据实际需要灵活设置。具体的,为了确保观看视频的质量时,可以将预设阈值设置为一个较大的值。为了能够最大限度的利用流媒体服务器的带宽时,可以将预设阈值设置成一个较小的值。为了在保证质量尚可的情况下,最大限度的利用流媒体服务器的带宽时,可以将预设阈值设置成一个介于该较大的值与较小的值之间的一个合适的值。

可选的,步骤402之前还可以包括如下步骤a和步骤b,以确定至少两个流媒体服务器各自的剩余负载能力。具体如下:

步骤a,所述至少两个流媒体服务器分别向所述负载均衡层发送负载相关信息。具体的,所述至少两个流媒体服务器可以主动向所述负载均衡层发送负载相关信息,或者,所述至少两个流媒体服务器可以在负载均衡层请求时被动向所述负载均衡层发送负载相关信息。可选的,所述流媒体服务器可以周期性的向所述负载均衡层发送所述负载相关信息。例如,所述流媒体服务器可以每1分钟向所述负载均衡层发送所述负载相关信息。

步骤b,所述负载均衡层根据所述至少两个流媒体服务器的负载相关信息,确定所述至少两个流媒体服务器各自的剩余负载能力。可选的,所述负载相关信息可以包括:网络带宽、剩余带宽、已用带宽、推流路数、拉流路数、中央处理器(centralprocessingunit,cpu)占有率中的一个或多个。其中,负载相关信息包括网络带宽、剩余带宽、已用带宽中的一个或多个的目的是为了使得负载均衡层获知流媒体服务器的剩余带宽。具体的,当负载相关信息包括网络带宽和已用带宽时,负载均衡层可以根据网络带宽以及已用带宽计算获得剩余带宽。当负载相关信息包括已用带宽时,负载均衡层可以根据已用带宽以及预先存储的网络带宽,计算获得剩余带宽。当负载相关信息包括网络带宽时,负载均衡层可以根据网络带宽以及对流媒体服务器进行流量检测获得的已用带宽,计算获得剩余带宽。当所述负载均衡层根据剩余带宽、推流路数、拉流路数以及cpu占用率中的至少两个确定剩余负载能力时,剩余带宽、推流路数、拉流路数以及cpu占用率之间可以有不同的权重考虑。

需要说明的是,当由所述负载均衡层的负载均衡器为所述直播请求选择流媒体服务器时,所述至少两个流媒体服务器可以分别将所述负载相关信息发送至所述负载均衡器,并由所述负载均衡器根据所述至少两个流媒体服务器的负载相关信息,确定所述至少两个流媒体服务器各自的剩余负载能力。

需要说明的是,本实施例中以由负载均衡层来确定的剩余负载能力为例,可选的,也可以由负载均衡层之外的其他设备来确定流媒体服务器的剩余负载能力,并将所确定的剩余负载能力发送给负载均衡层,本发明对此并不作限制。

步骤403、所述流媒体服务器根据所述直播请求,向所述终端提供直播服务。

本步骤中,所述流媒体服务器可以包括主流媒体服务器和备流媒体服务器,以对直播服务进行容灾保护。正常情况下,主流媒体服务器会负责直播服务,而备流媒体服务器处于待命状态。一旦主流媒体服务器出现宕机或其他突发情况,直播服务会自动由备流媒体服务器进行接管。通过流媒体服务器包括主流媒体服务器和备流媒体服务器,以对直播服务进行容灾保护,使得直播服务具有容灾性,从而使得流媒体直播系统具有鲁棒性。

可选的,对于推流请求,流媒体服务器还可以提供录制的功能。具体的,当所述直播请求为推流请求时,所述流媒体服务器对所述推流请求对应的数据进行存储。这里,推流请求对应的数据具体可以为语音数据、视频数据等。在对数据进行存储时,具体可以将所述数据存储至公有云、私有云、本地中的一个或多个。通过将数据存储至公有云、私有云、本地中的一个或多个,使得直播过程中所录制的数据的存储更加灵活。目前,如腾讯云或阿里云等云平台,由于其架构较为庞大,启动录制的时间较长,因此无法支持短时间的录制,也无法快速生成录制好的内容。举例来说,腾讯云及阿里云无法支持两分钟以内的录制,并且,录制的内容也需要在录制结束2-3分钟之后才能真正生成。相比之下,通过将数据存储至本地,可以实时进行任意时间长度的录制,并且在录制结束之后,可以立即生成录制好的内容,供用户查看。

可选的,当直播业务不断增大时,可以通过如下步骤404来为图1所示的流媒体直播系统增加新的流媒体服务器。

步骤404、所述负载均衡层根据用户输入的配置请求,将其他能够提供直播服务的服务器配置作为所述流媒体服务器。

本步骤中,具体的,所述负载均衡层可以根据用户输入的配置请求,将其他能够提供直播服务的服务器的标识添加至已有的流媒体服务器集合中。所述流媒体服务器集合中可以包括所有流媒体服务器的标识,负载均衡层在接收到直播请求时,可以根据所述流媒体服务器集合选择处理直播请求的流媒体服务器。

需要说明的是,步骤404与步骤401-步骤403之间并没有先后顺序的限制。

需要说明的是,当由所述负载均衡层的负载均衡器为所述直播请求选择流媒体服务器时,具体可以由所述负载均衡器根据用户输入的配置请求,将其他能够提供直播服务的服务器配置作为所述流媒体服务器。

本实施例中,通过所述负载均衡层根据所述至少两个流媒体服务器各自的剩余负载能力,从所述至少两个流媒体服务器中,选择剩余负载能力超过预设阈值的流媒体服务器为处理所述直播请求的流媒体服务器,并将所述直播请求转发至所选择的流媒体服务器,实现了在考虑流媒体服务器的剩余负载能力基础上的负载均衡,从而提高了直播的性能。

图5为本发明提供的流媒体直播方法实施例四的流程图。本实施例在图3所示实施例的基础上,主要描述了负载均衡层包括代理服务器和多个负载均衡器时一种具体的实现方式。如图5所示,本实施例的方法可以包括:

步骤501、代理服务器接收终端发送的直播请求,并将所述直播请求发送至多个负载均衡器中的一个。

本步骤中,具体可以由代理服务器的通信接口接收终端发送的直播请求。可选的,所述代理服务器可以将所述直播请求发送至所述多个负载均衡器中特定的一个负载均衡器。此时,所述多个负载均衡器中的其他负载均衡器仅作为备份负载均衡器。或者,可选的,所述代理服务器可以将所述直播请求随机发送至所述多个负载均衡器中的一个,所述代理服务器可以根据预设分流策略,将所述直播请求发送至多个负载均衡器中的一个。此时,其他负载均衡器在完成负载均衡功能的基础上也可以作为备份负载均衡器。本步骤中,通过其他负载均衡器作为备份负载均衡器,使得负载均衡功能具有容灾性,从而进一步提高了流媒体直播系统的鲁棒性。

可选的,所述预设分流策略包括:来源互联网协议(internetprotocol,ip)地址策略、请求类型策略、比例分配策略中的一个或多个。假设负载均衡器的个数为2,对于来源ip地址策略,可以规定将来源ip地址属于ip地址范围a的直播请求发送至负载均衡器1,将来源ip地址属于ip地址范围b的直播请求发送至负载均衡器2。对于请求类型策略,可以规定将请求类型为推流请求的直播请求发送至负载均衡器1,将请求类型为拉流请求的直播请求发送至负载均衡器2。对于比例分配策略,可以规定将直播请求按照预设比例发送至负载均衡器1和负载均衡器2。

步骤502、所述负载均衡器确定处理所述直播请求的流媒体服务器,并将所述直播请求转发至所述流媒体服务器。

需要说明的是,关于负载均衡器确定处理所述直播请求的流媒体服务器的具体方式可以参见上述步骤202以及步骤402中的相关描述,在此不再赘述。

步骤503、所述流媒体服务器根据所述直播请求,向所述终端提供直播服务。

需要说明的是,步骤503与步骤403、步骤302类似,在此不再赘述。

本实施例中,通过代理服务器接收终端发送的直播请求,并将所述直播请求发送至多个负载均衡器中的一个,所述负载均衡器确定处理所述直播请求的流媒体服务器,并将所述直播请求转发至所述流媒体服务器,其他负载均衡器作为备份负载均衡器,使得负载均衡功能具有容灾性,从而进一步提高了流媒体直播系统的鲁棒性。

本发明实施例提供一种流媒体直播系统,本实施例提供的流媒体直播系统应用于负载均衡层。图6为本发明实施例提供的流媒体直播系统实施例一的结构示意图。如图6所示,本实施例中的流媒体直播系统600,可以包括:通信接口601和第一处理器602;其中,

通信接口601,用于接收终端发送的直播请求,所述直播请求包括推流请求或拉流请求;

第一处理器602,用于从至少两个流媒体服务器中选择处理所述直播请求的流媒体服务器;

通信接口601,还用于将所述直播请求转发至所选择的流媒体服务器,以使所述流媒体服务器根据所述直播请求向所述终端提供直播服务。

可选的,第一处理器602,具体用于根据所述至少两个流媒体服务器各自的剩余负载能力,从所述至少两个流媒体服务器中,选择剩余负载能力超过预设阈值的流媒体服务器为处理所述直播请求的流媒体服务器。

可选的,通信接口601,还用于接收所述至少两个流媒体服务器分别发送的负载相关信息;

第一处理器602,还用于根据所述至少两个流媒体服务器的负载相关信息,确定所述至少两个流媒体服务器各自的剩余负载能力。

可选的,所述负载相关信息包括:网络带宽、剩余带宽、已用带宽、推流路数、拉流路数、中央处理器cpu占有率中的一个或多个。

可选的,负载均衡层600包括代理服务器和负载均衡器;通信接口601包括第一通信接口6011和第二通信接口6012;所述代理服务器包括第一通信接口6011,所述负载均衡器包括第二通信接口6012和第一处理器602;

第一通信接口6011,用于接收所述终端发送的所述直播请求,并将所述直播请求转发至所述负载均衡器;

第二通信接口6012,用于将所述直播请求转发至所述流媒体服务器。

可选的,所述负载均衡器的个数为多个;所述代理服务器还包括:第二处理器603,用于确定将所述直播请求发送至多个负载均衡器中的一个。

可选的,第二处理器603,具体用于根据预设分流策略,确定将所述直播请求发送至多个负载均衡器中的一个,其他所述负载均衡器作为备份负载均衡器。

可选的,所述预设分流策略包括:来源互联网协议ip地址策略、请求类型策略、比例分配策略中的一个或多个。

可选的,第一处理器602,还用于根据用户输入的配置请求,将其他能够提供直播服务的服务器配置作为所述流媒体服务器。

本实施例提供的流媒体直播系统,可以用于执行前述实施例中图2所示实施例的流媒体直播方法以及图4、图5所示实施例的流媒体直播方法负载均衡层侧的技术方案,其实现原理和技术请参见前述相关部分,在此不再赘述。

本发明实施例还提供一种流媒体直播系统,本实施例提供的流媒体直播系统应用于流媒体服务器。图7为本发明实施例提供的流媒体直播系统实施例二的结构示意图。如图7所示,本实施例中的流媒体直播系统700,可以包括:通信接口701和处理器702;其中,

通信接口701,用于接收负载均衡层转发的终端的直播请求,所述直播请求包括推流请求或拉流请求;

处理器702,用于根据所述直播请求,向所述终端提供直播服务。

可选的,通信接口701,还用于向所述负载均衡层发送负载相关信息,以使所述负载均衡层根据所述负载相关信息确定剩余负载能力。

可选的,通信接口701,具体用于周期性的向所述负载均衡层发送所述负载相关信息。

可选的,所述流媒体服务器包括主流媒体服务器和备流媒体服务器,以对直播服务进行容灾保护。

可选的,当所述直播请求为推流请求时,处理器702,还用于对所述推流请求对应的数据进行存储。

可选的,处理器702,具体用于将所述数据存储至公有云、私有云、本地中的一个或多个。

本实施例提供的流媒体直播系统,可以用于执行前述实施例中图3所示实施例的流媒体直播方法以及图4、图5所示实施例的流媒体直播方法流媒体服务器侧的技术方案,其实现原理和技术请参见前述相关部分,在此不再赘述。

本发明实施例还提供一种流媒体直播系统。图8为本发明实施例提供的流媒体直播系统实施例三的结构示意图。如图8所示,本实施例中的流媒体直播系统800,可以包括:负载均衡层801和至少两个流媒体设备802;其中,

负载均衡层801,用于接收终端发送的直播请求;

负载均衡层801,还用于从至少两个流媒体服务器802中,选择处理所述直播请求的流媒体服务器,并将所述直播请求转发至所选择的流媒体服务器;

流媒体服务器802,用于根据所述直播请求,向所述终端提供直播服务。

可选的,负载均衡层801,具体用于根据所述至少两个流媒体服务器802各自的剩余负载能力,从所述至少两个流媒体服务器802中,选择剩余负载能力超过预设阈值的流媒体服务器为处理所述直播请求的流媒体服务器。

可选的,至少两个流媒体服务器802,还用于分别向负载均衡层801发送负载相关信息;

负载均衡层801,还用于根据至少两个流媒体服务器802的负载相关信息,确定至少两个流媒体服务器802各自的剩余负载能力。

可选的,至少两个流媒体服务器802,具体用于周期性的向所述负载均衡器发送所述负载相关信息。

可选的,所述负载相关信息包括:网络带宽、剩余带宽、已用带宽、推流路数、拉流路数、中央处理器cpu占有率中的一个或多个。

可选的,负载均衡层801包括代理服务器8011和负载均衡服务器8012;

代理服务器8011,用于接收终端发送的直播请求,并将所述直播请求转发至负载均衡器8012;

负载均衡器8012,用于从至少两个流媒体服务器802中,选择处理所述直播请求的流媒体服务器,并将所述直播请求转发至所选择的流媒体服务器。

可选的,负载均衡器8012的个数为多个;

代理服务器8011,具体用于将所述直播请求发送至多个负载均衡器8012中的一个。

可选的,代理服务器8011,具有用于根据预设分流策略,将所述直播请求发送至多个负载均衡器8012中的一个,其他所述负载均衡器作为备份负载均衡器。

可选的,所述预设分流策略包括:来源互联网协议ip地址策略、请求类型策略、比例分配策略中的一个或多个。

可选的,负载均衡层801,还用于根据用户输入的配置请求,将其他能够提供直播服务的服务器配置作为流媒体服务器802。

可选的,流媒体服务器802包括主流媒体服务器和备流媒体服务器,以对直播服务进行容灾保护。

可选的,当所述直播请求为推流请求时,流媒体服务器802,还用于对所述推流请求对应的数据进行存储。

可选的,流媒体服务器802,具体用于将所述数据存储至公有云、私有云、本地中的一个或多个。

需要说明的是,图8以负载均衡器的个数为2,流媒体服务器的个数为3为例。

本实施例提供的流媒体直播系统,可以用于执行前述实施例中图2-图5所示实施例的流媒体直播方法的技术方案,其实现原理和技术请参见前述相关部分,在此不再赘述。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

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