CN107332894B - 直播方法、装置及系统、服务器、存储介质 - Google Patents

直播方法、装置及系统、服务器、存储介质 Download PDF

Info

Publication number
CN107332894B
CN107332894B CN201710485762.9A CN201710485762A CN107332894B CN 107332894 B CN107332894 B CN 107332894B CN 201710485762 A CN201710485762 A CN 201710485762A CN 107332894 B CN107332894 B CN 107332894B
Authority
CN
China
Prior art keywords
server
live
anchor
live broadcast
proxy server
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
CN201710485762.9A
Other languages
English (en)
Other versions
CN107332894A (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.)
Bigo Technology Singapore Pte Ltd
Original Assignee
Guangzhou Baiguoyuan Information 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 Guangzhou Baiguoyuan Information Technology Co Ltd filed Critical Guangzhou Baiguoyuan Information Technology Co Ltd
Priority to CN201710485762.9A priority Critical patent/CN107332894B/zh
Publication of CN107332894A publication Critical patent/CN107332894A/zh
Application granted granted Critical
Publication of CN107332894B publication Critical patent/CN107332894B/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/50Network services
    • H04L67/56Provisioning of proxy services

Abstract

本发明公开一种直播方法、装置及系统、服务器、存储介质,属于网络直播领域。该方法包括:接收第一主播服务器发送的直播数据,第一主播服务器为部署在第一机房中的主播服务器,直播数据是第一主播客户端采集到直播数据后向第一主播服务器发送的数据;向第二代理服务器发送直播数据,以便于第二代理服务器将直播数据分发至第二机房中的目标观众服务器,目标观众服务器用于将直播数据分发至接入目标观众服务器的目标观众客户端。本发明解决了直播过程消耗的跨机房流量较大的问题,有助于减小跨机房流量。本发明用于直播。

Description

直播方法、装置及系统、服务器、存储介质
技术领域
本发明涉及网络直播领域,特别涉及一种直播方法、装置及系统、服务器、存储介质。
背景技术
网络直播系统是一种将主播客户端的直播数据广播至观众客户端的互联网系统。随着互联网技术的发展,越来越多的用户倾向于采用网络直播系统进行会议直播、比赛直播、游戏直播等。
相关技术中,网络直播系统包括:直播服务器以及用于管理直播服务器的地址和端口等的管理设备,直播服务器包括主播服务器和能够与该主播服务器通信的至少一个观众服务器,主播服务器接入有主播客户端,至少一个观众服务器中的每个观众服务器接入有至少一个观众客户端。在直播的过程中,主播客户端可以采集直播数据,然后将直播数据发送给主播服务器,主播服务器将直播数据发送给至少一个观众服务器中的每个观众服务器,进而由各个观众服务器将该直播数据分发给相应的观众客户端。其中,主播客户端与观众客户端可以分布在不同网络环境中,为了保证客户端(主播客户端和观众客户端)的网络连接良好,主播客户端与主播服务器通常处于同一网络环境中,观众客户端与观众服务器通常处于同一网络环境中,且不同的观众服务器可以处于不同网络环境中。也即是主播服务器与观众服务器可以处于不同机房(机房指的是电信、网通、移动、双线、电力以及政府或者企业等存放服务器的地方)中,不同的观众服务器可以处于不同机房中。
在实现本发明的过程中,发明人发现相关技术至少存在以下问题:
由于直播过程中主播服务器需要将直播数据发送给至少一个观众服务器中的每个观众服务器,且主播服务器与至少一个观众服务器处于不同的机房中,因此直播过程消耗的跨机房流量(跨机房流量是指在不同机房间发送数据所消耗的流量)较大。
发明内容
为了解决直播过程消耗的跨机房流量较大的问题,本发明提供一种直播方法、装置及系统、服务器、存储介质。所述技术方案如下:
第一方面,提供一种直播方法,用于直播系统的第一代理服务器,所述直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在所述每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,所述第一代理服务器为部署在第一机房中的代理服务器,所述第一机房为所述多个机房中的任一机房,所述方法包括:
接收第一主播服务器发送的直播数据,所述第一主播服务器为部署在所述第一机房中的主播服务器,所述直播数据是第一主播客户端采集到直播数据后向所述第一主播服务器发送的数据,所述第一主播客户端为接入所述第一主播服务器的主播客户端;
向第二代理服务器发送所述直播数据,以便于所述第二代理服务器将所述直播数据分发至第二机房中的目标观众服务器,所述目标观众服务器用于将所述直播数据分发至接入所述目标观众服务器的目标观众客户端,所述第二机房为所述多个机房中除所述第一机房之外的任一机房,所述第二代理服务器为部署在所述第二机房中的代理服务器。
可选地,在所述向第二代理服务器发送所述直播数据之前,所述方法还包括:
接收所述第二代理服务器发送的直播订阅消息,所述直播订阅消息包括所述目标观众客户端的标识,所述直播订阅消息是所述目标观众客户端向所述目标观众服务器发送,并由所述目标观众服务器转发给所述第二代理服务器的消息;
所述向第二代理服务器发送所述直播数据,包括:
根据所述直播订阅消息,向所述第二代理服务器发送直播消息,所述直播消息包括所述直播数据和所述目标观众客户端的标识,所述目标观众服务器用于根据所述目标观众客户端的标识将所述直播数据分发至所述目标观众客户端。
可选地,所述直播系统还包括管理设备,所述接收所述第二代理服务器发送的直播订阅消息,包括:
接收所述第二代理服务器通过所述管理设备发送的直播订阅消息。
第二方面,提供一种直播方法,用于直播系统的第二代理服务器,所述直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在所述每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,所述第二代理服务器为部署在第二机房中的代理服务器,所述方法包括:
接收第一代理服务器发送的直播数据,所述直播数据是第一主播客户端采集到直播数据后向第一主播服务器发送,并由所述第一主播服务器转发给第一代理服务器的数据,所述第一代理服务器为部署在第一机房中的代理服务器,所述第一主播服务器为部署在所述第一机房中的主播服务器,所述第一主播客户端为接入所述第一主播服务器的主播客户端,所述第一机房为所述多个机房中的任一机房,所述第二机房为所述多个机房中除所述第一机房之外的任一机房;
将所述直播数据分发至所述第二机房中的目标观众服务器,所述目标观众服务器用于将所述直播数据分发至接入所述目标观众服务器的目标观众客户端。
可选地,在所述接收第一代理服务器发送的直播数据之前,所述方法还包括:
接收所述目标观众服务器发送的直播订阅消息,所述直播订阅消息包括所述目标观众客户端的标识,所述直播订阅消息是所述目标观众客户端向所述目标观众服务器发送的消息;
向所述第一代理服务器发送所述直播订阅消息;
所述接收第一代理服务器发送的直播数据,包括:
接收所述第一代理服务器发送的直播消息,所述直播消息包括所述直播数据和所述目标观众客户端的标识;
所述将所述直播数据分发至所述第二机房中的目标观众服务器,包括:
将所述直播消息分发至所述第二机房中的目标观众服务器,所述目标观众服务器用于根据所述目标观众客户端的标识将所述直播数据分发至所述目标观众客户端。
可选地,所述直播系统还包括管理设备,所述向所述第一代理服务器发送所述直播订阅消息,包括:
通过所述管理设备向所述第一代理服务器发送所述直播订阅消息。
第三方面,提供一种直播装置,用于直播系统的第一代理服务器,所述直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在所述每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,所述第一代理服务器为部署在第一机房中的代理服务器,所述第一机房为所述多个机房中的任一机房,所述装置包括:
第一接收模块,用于接收第一主播服务器发送的直播数据,所述第一主播服务器为部署在所述第一机房中的主播服务器,所述直播数据是第一主播客户端采集到直播数据后向所述第一主播服务器发送的数据,所述第一主播客户端为接入所述第一主播服务器的主播客户端;
发送模块,用于向第二代理服务器发送所述直播数据,以便于所述第二代理服务器将所述直播数据分发至第二机房中的目标观众服务器,所述目标观众服务器用于将所述直播数据分发至接入所述目标观众服务器的目标观众客户端,所述第二机房为所述多个机房中除所述第一机房之外的任一机房,所述第二代理服务器为部署在所述第二机房中的代理服务器。
可选地,所述装置还包括:
第二接收模块,用于接收所述第二代理服务器发送的直播订阅消息,所述直播订阅消息包括所述目标观众客户端的标识,所述直播订阅消息是所述目标观众客户端向所述目标观众服务器发送,并由所述目标观众服务器转发给所述第二代理服务器的消息;
所述发送模块,用于根据所述直播订阅消息,向所述第二代理服务器发送直播消息,所述直播消息包括所述直播数据和所述目标观众客户端的标识,所述目标观众服务器用于根据所述目标观众客户端的标识将所述直播数据分发至所述目标观众客户端。
可选地,所述直播系统还包括管理设备,所述第二接收模块,用于接收所述第二代理服务器通过所述管理设备发送的直播订阅消息。
第四方面,提供一种直播装置,用于直播系统的第二代理服务器,所述直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在所述每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,所述第二代理服务器为部署在第二机房中的代理服务器,所述装置包括:
第一接收模块,用于接收第一代理服务器发送的直播数据,所述直播数据是第一主播客户端采集到直播数据后向第一主播服务器发送,并由所述第一主播服务器转发给第一代理服务器的数据,所述第一代理服务器为部署在第一机房中的代理服务器,所述第一主播服务器为部署在所述第一机房中的主播服务器,所述第一主播客户端为接入所述第一主播服务器的主播客户端,所述第一机房为所述多个机房中的任一机房,所述第二机房为所述多个机房中除所述第一机房之外的任一机房;
第一发送模块,用于将所述直播数据分发至所述第二机房中的目标观众服务器,所述目标观众服务器用于将所述直播数据分发至接入所述目标观众服务器的目标观众客户端。
可选地,所述装置还包括:
第二接收模块,用于接收所述目标观众服务器发送的直播订阅消息,所述直播订阅消息包括所述目标观众客户端的标识,所述直播订阅消息是所述目标观众客户端向所述目标观众服务器发送的消息;
第二发送模块,用于向所述第一代理服务器发送所述直播订阅消息;
所述第一接收模块,用于接收所述第一代理服务器发送的直播消息,所述直播消息包括所述直播数据和所述目标观众客户端的标识;
所述第一发送模块,用于将所述直播消息分发至所述第二机房中的目标观众服务器,所述目标观众服务器用于根据所述目标观众客户端的标识将所述直播数据分发至所述目标观众客户端。
可选地,所述直播系统还包括管理设备,所述第二发送模块,用于通过所述管理设备向所述第一代理服务器发送所述直播订阅消息。
第五方面,提供一种服务器,所述服务器为直播系统的第一代理服务器,所述直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在所述每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,所述第一代理服务器为部署在第一机房中的代理服务器,所述第一机房为所述多个机房中的任一机房,所述服务器包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为:
接收第一主播服务器发送的直播数据,所述第一主播服务器为部署在所述第一机房中的主播服务器,所述直播数据是第一主播客户端采集到直播数据后向所述第一主播服务器发送的数据,所述第一主播客户端为接入所述第一主播服务器的主播客户端;
向第二代理服务器发送所述直播数据,以便于所述第二代理服务器将所述直播数据分发至第二机房中的目标观众服务器,所述目标观众服务器用于将所述直播数据分发至接入所述目标观众服务器的目标观众客户端,所述第二机房为所述多个机房中除所述第一机房之外的任一机房,所述第二代理服务器为部署在所述第二机房中的代理服务器。
第六方面,提供一种服务器,所述服务器为直播系统的第二代理服务器,所述直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在所述每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,所述第二代理服务器为部署在第二机房中的代理服务器,所述服务器包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为:
接收第一代理服务器发送的直播数据,所述直播数据是第一主播客户端采集到直播数据后向第一主播服务器发送,并由所述第一主播服务器转发给第一代理服务器的数据,所述第一代理服务器为部署在第一机房中的代理服务器,所述第一主播服务器为部署在所述第一机房中的主播服务器,所述第一主播客户端为接入所述第一主播服务器的主播客户端,所述第一机房为所述多个机房中的任一机房,所述第二机房为所述多个机房中除所述第一机房之外的任一机房;
将所述直播数据分发至所述第二机房中的目标观众服务器,所述目标观众服务器用于将所述直播数据分发至接入所述目标观众服务器的目标观众客户端。
第七方面,提供一种直播系统,所述直播系统包括:部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在所述每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,部署在所述多个机房中的代理服务器包括第一代理服务器和第二代理服务器,所述第一代理服务器为部署在第一机房中的代理服务器,所述第二代理服务器为部署在第二机房中的代理服务器,所述第一机房为所述多个机房中的任一机房,所述第二机房为所述多个机房中除所述第一机房之外的任一机房,
所述第一代理服务器包括第三方面或第三方面的任一可选方式所提供的直播装置,所述第二代理服务器包括第四方面或第四方面的任一可选方式所提供的直播装置;或者,
所述第一代理服务器为第五方面所提供的服务器,所述第二代理服务器为第六方面所提供的服务器。
第八方面,提供一种存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得所述服务器能够执行一种直播方法,所述服务器为直播系统的第一代理服务器,所述直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在所述每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,所述第一代理服务器为部署在第一机房中的代理服务器,所述第一机房为所述多个机房中的任一机房,所述直播方法包括:
接收第一主播服务器发送的直播数据,所述第一主播服务器为部署在所述第一机房中的主播服务器,所述直播数据是第一主播客户端采集到直播数据后向所述第一主播服务器发送的数据,所述第一主播客户端为接入所述第一主播服务器的主播客户端;
向第二代理服务器发送所述直播数据,以便于所述第二代理服务器将所述直播数据分发至第二机房中的目标观众服务器,所述目标观众服务器用于将所述直播数据分发至接入所述目标观众服务器的目标观众客户端,所述第二机房为所述多个机房中除所述第一机房之外的任一机房,所述第二代理服务器为部署在所述第二机房中的代理服务器。
第九方面,提供一种存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得所述服务器能够执行一种直播方法,所述服务器为直播系统的第二代理服务器,所述直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在所述每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,所述第二代理服务器为部署在第二机房中的代理服务器,所述直播方法包括:
接收第一代理服务器发送的直播数据,所述直播数据是第一主播客户端采集到直播数据后向第一主播服务器发送,并由所述第一主播服务器转发给第一代理服务器的数据,所述第一代理服务器为部署在第一机房中的代理服务器,所述第一主播服务器为部署在所述第一机房中的主播服务器,所述第一主播客户端为接入所述第一主播服务器的主播客户端,所述第一机房为所述多个机房中的任一机房,所述第二机房为所述多个机房中除所述第一机房之外的任一机房;
将所述直播数据分发至所述第二机房中的目标观众服务器,所述目标观众服务器用于将所述直播数据分发至接入所述目标观众服务器的目标观众客户端。
第十方面,提供一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行第一方面或第一方面的任一可选方式所提供的直播方法。
第十一方面,提供一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行第二方面或第二方面的任一可选方式所提供的直播方法。
本发明提供的技术方案带来的有益效果是:
本发明提供的直播方法、装置及系统、服务器、存储介质,第一机房中的第一主播服务器接收到直播数据后,向第一机房中的第一代理服务器发送直播数据,由第一代理服务器向第二机房中的第二代理服务器发送直播数据,并由第二代理服务器向第二机房中的各个目标观众服务器分发直播数据。由于通过代理服务器实现直播数据的跨机房发送,无需第一主播服务器向第二机房中的各个目标观众服务器发送直播数据,因此解决了直播过程消耗的跨机房流量较大的问题,有助于减小跨机房流量。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本发明。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是相关技术提供的一种视频直播系统的结构示意图;
图2是本发明各个实施例所涉及的一种实施环境的结构示意图;
图3是本发明实施例提供的一种直播方法的方法流程图;
图4是本发明实施例提供的另一种直播方法的方法流程图;
图5是本发明实施例提供的再一种直播方法的方法流程图;
图6-1是本发明实施例提供的一种直播装置的框图;
图6-2是本发明实施例提供的另一种直播装置的框图;
图7-1是本发明实施例提供的一种直播装置的框图;
图7-2是本发明实施例提供的另一种直播装置的框图;
图8是本发明实施例提供的一种服务器的结构示意图;
图9是本发明实施例提供的一种服务器的结构示意图。
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
相关技术中的直播系统包括直播服务器和管理设备,在同一主播频道中,直播服务器包括一个主播服务器和至少一个观众服务器,主播服务器接入有主播客户端,至少一个观众服务器中的每个观众服务器接入有至少一个观众客户端,在直播的过程中,主播客户端可以采集直播数据,然后将直播数据发送给主播服务器,主播服务器将直播数据发送给至少一个观众服务器中的每个观众服务器,进而由各个观众服务器将直播数据分发给相应的观众客户端。示例地,请参考图1,其示出了相关技术提供的一种视频直播系统的结构示意图,参见图1,该视频直播系统包括:部署在n个机房中的n*m个视频服务器(英文:VideoServer;简称:VS)以及用于管理该n*m个VS的地址和端口等的管理设备(图1中未示出),管理设备可以部署于视频管理服务中心(英文:Video Manager Service Centre;简称:VMSC),VS也可以称为视频直播服务器,n个机房中的每个机房中部署有m个VS,n≥2,m≥1,且m和n均为整数。如图1所示,机房1中部署有VS11至VS1m共m个VS,机房2中部署有VS21至VS2m共m个VS,依次类推,机房n中部署有VSn1至VSnm共m个VS。
在同一主播频道中,图1所示的n*m个VS可以包括一个主播VS和至少一个观众VS,主播VS接入有主播客户端(图1中未示出),每个观众VS接入有至少一个观众客户端(图1中未示出),在直播的过程中,主播客户端可以采集直播数据,然后将直播数据发送给主播VS,主播VS将直播数据发送给每个观众VS,进而由各个观众VS将该直播数据分发给相应的观众客户端。其中,在主播VS向观众VS发送直播数据之前,接入各个观众VS的各个观众客户端可以向相应的观众VS发送直播订阅消息,由各个观众VS通过管理设备向主播VS发送直播订阅消息,主播VS可以采用请求响应机制确认直播订阅消息,然后向各个观众VS发送直播数据,进而由各个观众VS向相应的各个观众客户端分发直播数据。
如图1所示,假设n*m个VS中,主播VS为VS1m,n*m个VS中的其余VS均为观众VS,在视频直播的过程中,主播用户登录主播客户端后,主播客户端进入目标主播频道并接入VS1m,主播客户端采集直播数据,然后将直播数据发送给VS1m;观众用户登录观众客户端后,观众用户在观众客户端显示的频道列表中点击目标主播频道,以使观众客户端进入该目标主播频道,之后观众客户端接入相应的观众VS,并发送直播订阅消息到相应的观众VS,各个观众客户端都会向相应的观众VS发送直播订阅消息,各个观众VS通过管理设备向VS1m发送直播订阅消息,VS1m采用请求响应机制确认直播订阅消息,然后向各个观众VS发送直播数据,每个观众VS接收到直播数据后,向相应的各个观众客户端发送直播数据。
但是,由于主播服务器与观众服务器可以处于不同的机房中,不同的观众服务器可以处于不同的机房中,且主播服务器需要向各个观众服务器发送直播数据,因此直播系统的跨机房流量较大。例如,在图1所示的视频直播系统中,在同一主播频道中,主播VS需要接收主播客户端发送的直播数据,并向(n-1)*m+(m-1)个观众VS发送直播数据,主播VS的性能消耗是1路收和(n-1)*m+(m-1)路发,跨机房流量为(n-1)*m路,当主播VS的数量增加时,视频直播系统的跨机房流量呈[(n-1)*m]^2增长,视频直播系统需要处理的发送逻辑也呈[(n-1)*m]^2增长,直播服务器的压力较大,视频直播系统能够支持的主播数较少。
请参考图2,其示出了本发明各个实施例所涉及的一种实施环境的结构示意图,该实施环境提供一种直播系统,该直播系统包括管理设备、部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,管理设备用于管理代理服务器的地址和端口以及直播服务器的地址和端口等。该图2以直播系统为视频直播系统,且以机房的个数以及代理服务器的个数都为n,并以每个机房中部署有一个代理服务器为例进行说明,参见图2,该直播系统包括管理设备、部署在n个机房中的n*m个VS以及部署在每个机房中的视频代理(英文:Video Proxy;简称:VP),管理设备部署于VMSC,VS也可以称为视频直播服务器,VP也可以称为视频代理服务器,n个机房中的每个机房中部署有1个VP和m个VS,每个机房中的VP为该机房中的所有VS的代理,每个机房中的VP能够与该机房中的所有VS通信,n≥2,m≥1,且m和n均为整数。如图2所示,机房1中部署有VP1以及VS11至VS1m共m个VS,机房2中部署有VP2以及VS21至VS2m共m个VS,依次类推,机房n中部署有VPn以及VSn1至VSnm共m个VS。
在同一主播频道中,图2所示的n*m个VS可以包括一个主播VS和至少一个观众VS,与主播VS位于同一机房的VP可以称为主播VP,与观众VS位于同一机房的VP可以称为观众VP(同一机房中的VS可能包括同一主播频道中的主播VP和观众VP,此时该机房中的VP可以称为主播VP),主播VS接入有主播客户端(图2中未示出),每个观众VS接入有至少一个观众客户端(图2中未示出),在直播的过程中,主播客户端采集直播数据,然后将直播数据发送给主播VS,主播VS接收到直播数据后,将直播数据发送给主播VP,进而由主播VP将直播数据发送给各个观众VP,再由各个观众VP将直播数据分发给与各个观众VP位于同一机房中的各个观众VS,进而由各个观众VS将该直播数据分发给相应的观众客户端。其中,在主播VP向观众VP发送直播数据之前,接入各个观众VS的各个观众客户端可以向相应的观众VS发送携带自身标识(例如登陆观众客户端的用户账号等)的直播订阅消息,各个观众VS接收到直播订阅消息后,将自身标识(例如观众VS的编号等)添加在直播订阅消息中发送给相应的观众VP,各个观众VP接收到直播订阅消息后,将自身标识(例如观众VP的编号等)添加在直播订阅消息中,并通过管理设备向主播VP发送该直播订阅消息,主播VP可以采用请求响应机制确认直播订阅消息,然后根据直播订阅消息中的VP的标识向各个观众VP发送直播数据,进而由各个观众VP根据直播订阅消息中的观众VS的标识向各个观众VS发送直播数据,最终由各个观众VS根据直播订阅消息中的观众客户端的标识将直播数据分发至相应的各个观众客户端。
如图2所示,假设n*m个VS中,主播VS为VS1m,其余VS均为观众VS,则VP1称为主播VP,VP2至VPn均称为观众VP,在视频直播的过程中,主播用户登录主播客户端后,主播客户端接入VS1m,主播客户端采集直播数据,然后将直播数据发送给VS1m,VS1m接收到直播数据后,将直播数据发送给VP1;观众用户登录观众客户端后,观众用户在观众客户端显示的频道列表中点击目标主播频道,以使观众客户端进入该目标主播频道,之后观众客户端接入相应的观众VS,并发送携带自身标识的直播订阅消息到相应的观众VS,各个观众VS接收到观众客户端发送的直播订阅消息之后,将自身标识添加在直播订阅消息中发送给相应的观众VP,各个观众VP接收到直播订阅消息后,将自身标识添加在直播订阅消息中,并通过管理设备向VP1发送该直播订阅消息,VP1可以采用请求响应机制确认直播订阅消息,然后根据直播订阅消息中的VP的标识向各个观众VP发送直播数据,进而由各个观众VP根据直播订阅消息中的观众VS的标识向各个观众VS发送直播数据,最终由各个观众VS根据直播订阅消息中的观众客户端的标识将直播数据分发至相应的各个观众客户端。
本实施环境提供的直播系统通过代理服务器实现直播数据的跨机房传输,并由代理服务器向同机房中的各个观众服务器发送直播数据,将大部分的跨机房流量转化为机房内流量,减小了跨机房流量。例如,在图2所示的直播系统中,主播VS只需要接收主播客户端发送的直播数据并向主播VP发送直播数据,主播VP只需要接收主播VS发送的直播数据并向(n-1)个观众VP发送直播数据,主播VS的性能消耗是1路收和1路发,主播VP的性能消耗是1路收和(n-1)路发,跨机房流量为(n-1)路,其他跨机房流量均转化为机房内流量,大大减小了跨机房流量以及直播服务器的性能消耗,提高了直播服务器的性能,并且直播系统能够支持的主播数也大大增加。
需要说明的是,本实施环境中的主播VS和观众VS是针对同一主播频道而言的,在不同主播频道中,一个VS既可以是主播VS,也可以是观众VS,并且图2是以直播服务器为VS,且以每个机房中部署有m个VS为例进行说明的,实际应用中,直播服务器还可以为音频服务器或其他服务器,且各个机房中的直播服务器的数量可以相等或不等,本实施环境对此不作限定。
请参考图3,其示出了本发明实施例提供的一种直播方法的方法流程图,该直播方法可以用于直播系统的第一代理服务器,该第一代理服务器为直播系统的多个代理服务器中部署在第一机房中的代理服务器,该第一代理服务器用于代理第一机房中的直播服务器,例如,当直播系统为图2所示的视频直播系统时,该第一机房可以为机房1,该第一代理服务器可以为VP1。参见图3,该方法包括:
步骤301、接收第一主播服务器发送的直播数据,第一主播服务器为部署在第一机房中的主播服务器,直播数据是第一主播客户端采集到直播数据后向第一主播服务器发送的数据,第一主播客户端为接入第一主播服务器的主播客户端。
步骤302、向第二代理服务器发送直播数据,以便于第二代理服务器将直播数据分发至第二机房中的目标观众服务器,目标观众服务器用于将直播数据分发至接入目标观众服务器的目标观众客户端,第二机房为多个机房中除第一机房之外的任一机房,第二代理服务器为部署在第二机房中的代理服务器。
综上所述,本发明实施例提供的直播方法,第一机房中的第一主播服务器接收到直播数据后,向第一机房中的第一代理服务器发送直播数据,由第一代理服务器向第二机房中的第二代理服务器发送直播数据,并由第二代理服务器向第二机房中的各个目标观众服务器分发直播数据。由于通过代理服务器实现直播数据的跨机房发送,而无需第一主播服务器向第二机房中的各个目标观众服务器发送直播数据,因此解决了直播过程消耗的跨机房流量较大的问题,有助于减小跨机房流量。
请参考图4,其示出了本发明实施例提供的另一种直播方法的方法流程图,该直播方法可以用于直播系统的第二代理服务器,该第二代理服务器为直播系统的多个代理服务器中部署在第二机房中的代理服务器,该第二代理服务器用于代理第二机房中的直播服务器,该第二机房可以为除第一机房之外的任一机房,例如,当直播系统为图2所示的视频直播系统,且第一机房为机房1时,该第二机房可以为除机房1之外的任一机房,例如第二机房为机房2、机房3等等,该第二代理服务器可以为VP2、VP3等等。参见图4,该方法包括:
步骤401、接收第一代理服务器发送的直播数据,直播数据是第一主播客户端采集到直播数据后向第一主播服务器发送,并由第一主播服务器转发给第一代理服务器的数据,第一代理服务器为部署在第一机房中的代理服务器,第一主播服务器为部署在第一机房中的主播服务器,第一主播客户端为接入第一主播服务器的主播客户端,第一机房为多个机房中的任一机房,第二机房为多个机房中除第一机房之外的任一机房。
步骤402、将直播数据分发至第二机房中的目标观众服务器,目标观众服务器用于将直播数据分发至接入目标观众服务器的目标观众客户端。
综上所述,本发明实施例提供的直播方法,第一机房中的第一主播服务器接收到直播数据后,向第一机房中的第一代理服务器发送直播数据,由第一代理服务器向第二机房中的第二代理服务器发送直播数据,并由第二代理服务器向第二机房中的各个目标观众服务器分发直播数据。由于通过代理服务器实现直播数据的跨机房发送,而无需第一主播服务器向第二机房中的各个目标观众服务器发送直播数据,因此解决了直播过程消耗的跨机房流量较大的问题,有助于减小跨机房流量。
请参考图5,其示出了本发明实施例提供的再一种直播方法的方法流程图,该直播方法可以用于直播系统,该直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种。参见图5,该方法包括:
步骤501、目标观众客户端向目标观众服务器发送直播订阅消息,直播订阅消息包括目标观众客户端的标识。
其中,目标观众客户端为接入目标观众服务器的观众客户端,该目标观众客户端具体可以为直播客户端,且可以是视频直播客户端或音频直播客户端等等,例如,目标观众客户端可以为BigoLive客户端。目标观众服务器为直播系统中部署在第二机房中的观众服务器,该目标观众服务器具体可以为直播服务器,第一机房为多个机房中的任一机房,第二机房为多个机房中除第一机房之外的任一机房。
可选地,观众用户可以采用用户账号和登录密码登陆目标观众客户端,登陆成功之后,目标观众客户端可以显示频道列表,频道列表中包括多个目标主播频道,观众用户可以在频道列表中点击目标主播频道,目标观众客户端检测到点击目标主播频道所触发的点击指令时,根据目标主播频道的相关信息(例如标识等)以及目标观众客户端的标识生成直播订阅消息,并向目标观众服务器发送直播订阅消息。其中,目标观众客户端的标识例如但不限于登陆目标观众客户端的用户账号等,本发明实施例对此不作限定。
示例地,以图2所示的直播系统为例,目标观众服务器可以为机房2中的VS21、VS22等,还可以为机房3中的VS31等,本实施例以目标观众服务器为VS21,目标观众客户端为接入VS21的观众客户端G(图2中未示出)为例,则观众客户端G可以生成包括观众客户端G的标识的直播订阅消息,然后向VS21发送该直播订阅消息,该直播订阅消息还可以包括目标主播频道的相关信息。
步骤502、目标观众服务器接收目标观众客户端发送的直播订阅消息。
目标观众客户端向目标观众服务器发送直播订阅消息时,目标观众服务器可以接收目标观众客户端发送的直播订阅消息。例如,VS21接收观众客户端G发送的直播订阅消息。
步骤503、目标观众服务器向第二代理服务器发送直播订阅消息。
其中,直播系统包括部署在多个机房中的代理服务器,第二代理服务器为部署在第二机房中的代理服务器。
可选地,目标观众服务器可以对接收到的直播订阅消息进行处理,以在直播订阅消息中添加目标观众服务器的标识,然后向第二代理服务器发送直播订阅消息。其中,目标观众服务器的标识例如但不限于目标观众服务器的编号等。
示例地,以图2所示的直播系统为例,第二代理服务器可以为机房2中的VP2,则VS21将VS21的标识添加在直播订阅消息中,然后向VP2发送直播订阅消息。
步骤504、第二代理服务器接收目标观众服务器发送的直播订阅消息。
目标观众服务器向第二代理服务器发送直播订阅消息时,第二代理服务器可以接收目标观众服务器发送的直播订阅消息。例如,VP2接收VS21发送的直播订阅消息。
步骤505、第二代理服务器向第一代理服务器发送直播订阅消息。
其中,第一代理服务器为直播系统的代理服务器中部署在第一机房中的代理服务器。
可选地,第二代理服务器可以对接收到的直播订阅消息进行处理,以在直播订阅消息中添加第二代理服务器的标识,然后向第一代理服务器发送直播订阅消息。其中,第二代理服务器的标识例如但不限于第二代理服务器的编号等。在本发明实施例中,直播系统还包括管理设备,管理设备用于管理直播服务器(包括主播服务器和观众服务器)的地址和端口以及代理服务器的地址和端口,第二代理服务器可以通过管理设备向第一代理服务器发送直播订阅消息。具体地,第二代理服务器将直播订阅消息发送给管理设备,并由管理设备转发给第一代理服务器。需要说明的是,本发明实施例中,第二代理服务器通过管理设备向第一代理服务器发送直播订阅消息,可以保证代理服务器之间传输的消息的可靠性。
示例地,以图2所示的直播系统为例,第一代理服务器可以为机房1中的VP1,则VP2可以将VP2的标识添加在直播订阅消息中,然后通过管理设备向VP1发送直播订阅消息。
步骤506、第一代理服务器接收第二代理服务器发送的直播订阅消息。
第二代理服务器向第一代理服务器发送直播订阅消息时,第一代理服务器可以接收第二代理服务器发送的直播订阅消息。在本发明实施例中,由于第二代理服务器通过管理设备向第一代理服务器发送直播订阅消息,因此第一代理服务器接收第二代理服务器通过管理设备发送的直播订阅消息。也即是,第一代理服务器接收管理设备发送的直播订阅消息,该直播订阅消息是第二代理服务器向管理设备发送的。示例地,VP1接收VP2通过管理设备发送的直播订阅消息。
步骤507、第一主播客户端采集直播数据。
其中,第一主播客户端为接入第一主播服务器的主播客户端,该第一主播客户端可以是视频直播客户端或音频直播客户端等等,例如,第一主播客户端为BigoLive客户端,第一主播服务器为直播系统中部署在第一机房中的主播服务器,该第一主播服务器具体可以为直播服务器。
可选地,主播用户可以采用用户账号和登录密码登陆第一主播客户端,登陆成功之后,第一主播客户端接入第一主播服务器,该第一主播服务器可以与目标主播频道对应,接入第一主播服务器之后,第一主播客户端可以采集直播数据,其中,该直播数据可以为音频数据或视频数据等。可选地,第一主播客户端运行在终端上,终端设置有视频组件(例如摄像头)和音频组件(例如麦克风)等,第一主播客户端可以通过终端的视频组件和音频组件中的至少一种采集直播数据,本发明实施例对此不作限定。
示例地,以图2所示的直播系统为例,第一主播服务器可以为机房1中VS1m,第一主播客户端可以为接入VS1m的主播客户端Z,则主播客户端Z通过运行该主播客户端Z的终端上的视频组件和音频组件中的至少一种采集直播数据。
步骤508、第一主播客户端向第一主播服务器发送直播数据。
第一主播客户端采集到直播数据后,可以向第一主播服务器发送直播数据。例如,主播客户端Z向VS1m发送直播数据。
步骤509、第一主播服务器接收第一主播客户端发送的直播数据。
第一主播客户端向第一主播服务器发送直播数据时,第一主播服务器可以接收第一主播客户端发送的直播数据。例如,VS1m接收主播客户端Z发送的直播数据。
步骤510、第一主播服务器向第一代理服务器发送直播数据。
第一主播服务器接收到第一主播客户端发送的直播数据后,可以向第一代理服务器发送直播数据。例如,VS1m向VP1发送直播数据。
步骤511、第一代理服务器接收第一主播服务器发送的直播数据。
第一主播服务器向第一代理服务器发送直播数据时,第一代理服务器可以接收第一主播服务器发送的直播数据。例如,VP1接收VS1m发送的直播数据。
步骤512、第一代理服务器向第二代理服务器发送直播数据。
第一代理服务器接收到第一主播服务器发送的直播数据后,可以向第二代理服务器发送直播数据,在本发明实施例中,步骤506中第一代理服务器接收到的直播订阅消息中可以包括第二代理服务器的标识、目标观众服务器的标识以及目标观众客户端的标识,因此第一代理服务器可以根据直播订阅消息中第二代理服务器的标识向第二代理服务器发送直播数据。
可选地,第一代理服务器可以根据目标观众服务器的标识以及目标观众客户端的标识对直播数据进行处理得到直播消息,该直播消息包括直播数据、目标观众客户端的标识以及目标观众服务器的标识,然后第一代理服务器根据第二代理服务器的标识向第二代理服务器发送直播消息。
示例地,以图2所示的直播系统为例,第一代理服务器可以为VP1,步骤506中VP1接收到的直播订阅消息中包括观众客户端G的标识、VS21的标识以及VP2的标识,VP1可以根据观众客户端G的标识和VS21的标识对直播数据进行处理得到直播消息,该直播消息中包括直播数据、观众客户端G的标识和VS21的标识,然后VP1根据VP2的标识向VP2发送该直播消息。
步骤513、第二代理服务器接收第一代理服务器发送的直播数据。
第一代理服务器向第二代理服务器发送直播数据时,第二代理服务器可以接收第一代理服务器发送的直播数据。可选地,第二代理服务器接收第一代理服务器发送的直播消息,该直播消息包括直播数据和目标观众客户端的标识,该直播消息还可以包括目标观众服务器的标识。
示例地,VP2接收VP1发送的直播消息,该直播消息中包括直播数据、观众客户端G的标识和VS21的标识。
步骤514、第二代理服务器将直播数据分发至第二机房中的目标观众服务器。
第二代理服务器接收到第一代理服务器发送的直播数据后,可以将直播数据分发至第二机房中的目标观众服务器。可选地,第二代理服务器实际接收到的是包括直播数据、目标观众客户端的标识以及目标观众服务器的标识的直播消息,第二代理服务器可以对直播消息进行解析,得到目标观众服务器的标识,根据目标观众服务器的标识将包括目标观众客户端的标识和直播数据的直播消息分发至第二机房中的目标观众服务器。
示例地,以图2所示的直播系统为例,VP2对接收到的直播消息进行解析,得到VS21的标识,然后根据VS21的标识将包括观众客户端G的标识和直播数据的直播消息分发至VS21。需要说明的是,本发明实施例是以目标观众服务器为图2中的VS21为例进行说明的,实际应用中,目标观众服务器可以包括至少一个观众服务器,例如,目标观众服务器可以包括VS21、VS22、VS23等,VP2可以向VS21、VS22、VS23等中的每个VS发送直播数据。还需要说明的是,本发明实施例是以第二代理服务器为图2中的VP2为例进行说明的,实际应用中,第二代理服务器可以包括至少一个VP,例如,第二代理服务器可以包括VP2、VP3、VP4等等,从而,在上述步骤512中,VP1可以向VP2、VP3、VP4中的每个VP发送直播数据,本发明实施例对此不作限定。
步骤515、目标观众服务器将直播数据分发至接入目标观众服务器的目标观众客户端。
目标观众服务器接收到直播数据后,可以将直播数据分发至接入目标观众服务器的目标观众客户端。目标观众服务器实际接收到的是包括直播数据和目标观众客户端的标识的直播消息,目标观众服务器可以对直播消息进行解析,得到目标观众客户端的标识,根据目标观众客户端的标识将直播数据发至接入目标观众服务器的目标观众客户端。示例地,以图2所示的直播系统为例,VS21根据观众客户端G的标识将直播数据分发至观众客户端G。
需要说明的是,本发明实施例是以接入目标观众服务器的目标观众客户端为观众客户端G为例进行说明的,实际应用中,接入目标观众服务器的目标观众客户端可以为多个,目标观众服务器可以将直播数据分发至接入目标观众服务器的每个目标观众客户端;还需要说明的是,目标观众客户端接收到直播数据后,可以根据直播数据播放直播内容,具体的实现过程可以参考相关技术,本发明实施例在此不再赘述。
需要补充说明的是,本发明实施例提供的直播方法步骤的先后顺序可以进行适当调整,步骤也可以根据情况进行相应增减,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化的方法,都应涵盖在本发明的保护范围之内,因此不再赘述。
综上所述,本发明实施例提供的直播方法,第一机房中的第一主播服务器接收到直播数据后,向第一机房中的第一代理服务器发送直播数据,由第一代理服务器向第二机房中的第二代理服务器发送直播数据,并由第二代理服务器向第二机房中的各个目标观众服务器分发直播数据。由于通过代理服务器实现直播数据的跨机房发送,而无需第一主播服务器向第二机房中的各个目标观众服务器发送直播数据,因此解决了直播过程消耗的跨机房流量较大的问题,有助于减小跨机房流量。本发明实施例提供的直播方法能够减小跨机房流量,减少用户的直播流量费用,减小直播服务器的压力,提高直播服务器的性能。
下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。
请参考图6-1,其示出了本发明实施例提供的一种直播装置600的框图,该直播装置600可以为第一代理服务器中的功能单元,用于执行图3所示实施例提供的直播方法或图5所示实施例提供的直播方法的相关步骤。参见图6-1,该直播装置600可以包括但不限于:
第一接收模块610,用于接收第一主播服务器发送的直播数据,第一主播服务器为部署在第一机房中的主播服务器,直播数据是第一主播客户端采集到直播数据后向第一主播服务器发送的数据,第一主播客户端为接入第一主播服务器的主播客户端;
发送模块620,用于向第二代理服务器发送直播数据,以便于第二代理服务器将直播数据分发至第二机房中的目标观众服务器,目标观众服务器用于将直播数据分发至接入目标观众服务器的目标观众客户端,第二机房为多个机房中除第一机房之外的任一机房,第二代理服务器为部署在第二机房中的代理服务器。
可选地,请参考图6-2,其示出了本发明实施例提供的另一种直播装置600的框图,在图6-1的基础上,该直播装置600还包括:
第二接收模块630,用于接收第二代理服务器发送的直播订阅消息,直播订阅消息包括目标观众客户端的标识,直播订阅消息是目标观众客户端向目标观众服务器发送,并由目标观众服务器转发给第二代理服务器的消息;
发送模块620,用于根据直播订阅消息,向第二代理服务器发送直播消息,直播消息包括直播数据和目标观众客户端的标识,目标观众服务器用于根据目标观众客户端的标识将直播数据分发至目标观众客户端。
可选地,直播系统还包括管理设备,第二接收模块630,用于接收第二代理服务器通过管理设备发送的直播订阅消息。
综上所述,本发明实施例提供的直播装置,第一机房中的第一主播服务器接收到直播数据后,向第一机房中的第一代理服务器发送直播数据,由第一代理服务器向第二机房中的第二代理服务器发送直播数据,并由第二代理服务器向第二机房中的各个目标观众服务器分发直播数据。由于通过代理服务器实现直播数据的跨机房发送,而无需第一主播服务器向第二机房中的各个目标观众服务器发送直播数据,因此解决了直播过程消耗的跨机房流量较大的问题,有助于减小跨机房流量。
请参考图7-1,其示出了本发明实施例提供的一种直播装置700的框图,该直播装置700可以为第二代理服务器中的功能单元,用于执行图4所示实施例提供的直播方法或图5所示实施例提供的直播方法的相关步骤。参见图7-1,该直播装置700可以包括但不限于:
第一接收模块710,用于接收第一代理服务器发送的直播数据,直播数据是第一主播客户端采集到直播数据后向第一主播服务器发送,并由第一主播服务器转发给第一代理服务器的数据,第一代理服务器为部署在第一机房中的代理服务器,第一主播服务器为部署在第一机房中的主播服务器,第一主播客户端为接入第一主播服务器的主播客户端,第一机房为多个机房中的任一机房,第二机房为多个机房中除第一机房之外的任一机房;
第一发送模块720,用于将直播数据分发至第二机房中的目标观众服务器,目标观众服务器用于将直播数据分发至接入目标观众服务器的目标观众客户端。
可选地,请参考图7-2,其示出了本发明实施例提供的另一种直播装置700的框图,参见图7-2,在图7-1的基础上,该直播装置700还包括:
第二接收模块730,用于接收目标观众服务器发送的直播订阅消息,直播订阅消息包括目标观众客户端的标识,直播订阅消息是目标观众客户端向目标观众服务器发送的消息;
第二发送模块740,用于向第一代理服务器发送直播订阅消息;
第一接收模块710,用于接收第一代理服务器发送的直播消息,直播消息包括直播数据和目标观众客户端的标识;
第一发送模块720,用于将直播消息分发至第二机房中的目标观众服务器,目标观众服务器用于根据目标观众客户端的标识将直播数据分发至目标观众客户端。
可选地,直播系统还包括管理设备,第二发送模块740,用于通过管理设备向第一代理服务器发送直播订阅消息。
综上所述,本发明实施例提供的直播装置,第一机房中的第一主播服务器接收到直播数据后,向第一机房中的第一代理服务器发送直播数据,由第一代理服务器向第二机房中的第二代理服务器发送直播数据,并由第二代理服务器向第二机房中的各个目标观众服务器分发直播数据。由于通过代理服务器实现直播数据的跨机房发送,而无需第一主播服务器向第二机房中的各个目标观众服务器发送直播数据,因此解决了直播过程消耗的跨机房流量较大的问题,有助于减小跨机房流量。
需要说明的是:上述实施例提供的直播装置在直播时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的直播方法与装置实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
请参考图8,其示出了本发明实施例提供的一种服务器800的结构示意图,该服务器800可以第一代理服务器,该第一代理服务器为直播系统中部署在第一机房中的代理服务器,例如,该第一代理服务器为部署在图2所示实施环境中的机房1中的VP1。参见图8,服务器800包括处理组件822,其进一步包括至少一个处理器,以及由存储器832所代表的存储器资源,用于存储可由处理组件822执行的指令,例如应用。存储器832中存储的应用可以包括至少一个,每一个对应于一组指令的模块。此外,处理组件822被配置为执行指令,以执行上述图3所示实施例提供的直播方法或图5所示实施例提供的直播方法的相关步骤。
服务器800还可以包括一个电源组件826被配置为执行服务器800的电源管理,一个有线或无线网络接口850被配置为将服务器800连接到网络,和一个输入输出(英文:Input/Output;简称:I/O)接口858。服务器800可以操作基于存储在存储器832的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
一种服务器,该服务器为直播系统的第一代理服务器,直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,第一代理服务器为部署在第一机房中的代理服务器,第一机房为多个机房中的任一机房,该服务器包括:
处理器;
用于存储处理器的可执行指令的存储器;
其中,处理器被配置为:
接收第一主播服务器发送的直播数据,第一主播服务器为部署在第一机房中的主播服务器,直播数据是第一主播客户端采集到直播数据后向第一主播服务器发送的数据,第一主播客户端为接入第一主播服务器的主播客户端;
向第二代理服务器发送直播数据,以便于第二代理服务器将直播数据分发至第二机房中的目标观众服务器,目标观众服务器用于将直播数据分发至接入目标观众服务器的目标观众客户端,第二机房为多个机房中除第一机房之外的任一机房,第二代理服务器为部署在第二机房中的代理服务器。
综上所述,本发明实施例提供的服务器,第一机房中的第一主播服务器接收到直播数据后,向第一机房中的第一代理服务器发送直播数据,由第一代理服务器向第二机房中的第二代理服务器发送直播数据,并由第二代理服务器向第二机房中的各个目标观众服务器分发直播数据。由于通过代理服务器实现直播数据的跨机房发送,而无需第一主播服务器向第二机房中的各个目标观众服务器发送直播数据,因此解决了直播过程消耗的跨机房流量较大的问题,有助于减小跨机房流量。
请参考图9,其示出了本发明实施例提供的一种服务器900的结构示意图,该服务器900可以第二代理服务器,该第二代理服务器为直播系统中部署在第二机房中的代理服务器,例如,该第二代理服务器为部署在图2所示实施环境中的机房2中的VP2。参见图9,服务器900包括处理组件922,其进一步包括至少一个处理器,以及由存储器932所代表的存储器资源,用于存储可由处理组件922执行的指令,例如应用。存储器932中存储的应用可以包括至少一个,每一个对应于一组指令的模块。此外,处理组件922被配置为执行指令,以执行上述图4所示实施例提供的直播方法或图5所示实施例提供的直播方法的相关步骤。
服务器900还可以包括一个电源组件926被配置为执行服务器900的电源管理,一个有线或无线网络接口950被配置为将服务器900连接到网络,和一个I/O接口958。服务器900可以操作基于存储在存储器932的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
一种服务器,该服务器为直播系统的第二代理服务器,直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,第二代理服务器为部署在第二机房中的代理服务器,该服务器包括:
处理器;
用于存储处理器的可执行指令的存储器;
其中,处理器被配置为:
接收第一代理服务器发送的直播数据,直播数据是第一主播客户端采集到直播数据后向第一主播服务器发送,并由第一主播服务器转发给第一代理服务器的数据,第一代理服务器为部署在第一机房中的代理服务器,第一主播服务器为部署在第一机房中的主播服务器,第一主播客户端为接入第一主播服务器的主播客户端,第一机房为多个机房中的任一机房,第二机房为多个机房中除第一机房之外的任一机房;
将直播数据分发至第二机房中的目标观众服务器,目标观众服务器用于将直播数据分发至接入目标观众服务器的目标观众客户端。
综上所述,本发明实施例提供的服务器,第一机房中的第一主播服务器接收到直播数据后,向第一机房中的第一代理服务器发送直播数据,由第一代理服务器向第二机房中的第二代理服务器发送直播数据,并由第二代理服务器向第二机房中的各个目标观众服务器分发直播数据。由于通过代理服务器实现直播数据的跨机房发送,而无需第一主播服务器向第二机房中的各个目标观众服务器发送直播数据,因此解决了直播过程消耗的跨机房流量较大的问题,有助于减小跨机房流量。
本发明实施例还提供了一种直播系统,该直播系统包括:部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,部署在多个机房中的代理服务器包括第一代理服务器和第二代理服务器,第一代理服务器为部署在第一机房中的代理服务器,第二代理服务器为部署在第二机房中的代理服务器,第一机房为多个机房中的任一机房,第二机房为多个机房中除第一机房之外的任一机房,
在一种可能的实现方式中,第一代理服务器包括图6-1或图6-2所示的直播装置600,第二代理服务器包括图7-1或图7-2所示的直播装置700;
在另一种可能的实现方式中,第一代理服务器为图8所示的服务器800,第二代理服务器为图9所示的服务器900。
综上所述,本发明实施例提供的直播系统,第一机房中的第一主播服务器接收到直播数据后,向第一机房中的第一代理服务器发送直播数据,由第一代理服务器向第二机房中的第二代理服务器发送直播数据,并由第二代理服务器向第二机房中的各个目标观众服务器分发直播数据。由于通过代理服务器实现直播数据的跨机房发送,而无需第一主播服务器向第二机房中的各个目标观众服务器发送直播数据,因此解决了直播过程消耗的跨机房流量较大的问题,有助于减小跨机房流量。
本发明实施例还提供了一种存储介质,当存储介质中的指令由服务器的处理器执行时,使得服务器能够执行一种直播方法,服务器为直播系统的第一代理服务器,直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,第一代理服务器为部署在第一机房中的代理服务器,第一机房为多个机房中的任一机房,该直播方法包括:
接收第一主播服务器发送的直播数据,第一主播服务器为部署在第一机房中的主播服务器,直播数据是第一主播客户端采集到直播数据后向第一主播服务器发送的数据,第一主播客户端为接入第一主播服务器的主播客户端;
向第二代理服务器发送直播数据,以便于第二代理服务器将直播数据分发至第二机房中的目标观众服务器,目标观众服务器用于将直播数据分发至接入目标观众服务器的目标观众客户端,第二机房为多个机房中除第一机房之外的任一机房,第二代理服务器为部署在第二机房中的代理服务器。
可选地,在向第二代理服务器发送直播数据之前,该方法还包括:
接收第二代理服务器发送的直播订阅消息,直播订阅消息包括目标观众客户端的标识,直播订阅消息是目标观众客户端向目标观众服务器发送,并由目标观众服务器转发给第二代理服务器的消息;
向第二代理服务器发送直播数据,包括:
根据直播订阅消息,向第二代理服务器发送直播消息,直播消息包括直播数据和目标观众客户端的标识,目标观众服务器用于根据目标观众客户端的标识将直播数据分发至目标观众客户端。
可选地,直播系统还包括管理设备,接收第二代理服务器发送的直播订阅消息,包括:接收第二代理服务器通过管理设备发送的直播订阅消息。
本发明实施例还提供了一种存储介质,当存储介质中的指令由服务器的处理器执行时,使得服务器能够执行一种直播方法,服务器为直播系统的第二代理服务器,直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,第二代理服务器为部署在第二机房中的代理服务器,该直播方法包括:
接收第一代理服务器发送的直播数据,直播数据是第一主播客户端采集到直播数据后向第一主播服务器发送,并由第一主播服务器转发给第一代理服务器的数据,第一代理服务器为部署在第一机房中的代理服务器,第一主播服务器为部署在第一机房中的主播服务器,第一主播客户端为接入第一主播服务器的主播客户端,第一机房为多个机房中的任一机房,第二机房为多个机房中除第一机房之外的任一机房;
将直播数据分发至第二机房中的目标观众服务器,目标观众服务器用于将直播数据分发至接入目标观众服务器的目标观众客户端。
可选地,在接收第一代理服务器发送的直播数据之前,该方法还包括:
接收目标观众服务器发送的直播订阅消息,直播订阅消息包括目标观众客户端的标识,直播订阅消息是目标观众客户端向目标观众服务器发送的消息;
向第一代理服务器发送直播订阅消息;
接收第一代理服务器发送的直播数据,包括:
接收第一代理服务器发送的直播消息,直播消息包括直播数据和目标观众客户端的标识;
将直播数据分发至第二机房中的目标观众服务器,包括:
将直播消息分发至第二机房中的目标观众服务器,目标观众服务器用于根据目标观众客户端的标识将直播数据分发至目标观众客户端。
可选地,直播系统还包括管理设备,向第一代理服务器发送直播订阅消息,包括:通过管理设备向第一代理服务器发送直播订阅消息。
本发明实施例还提供了一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行图3所示实施例提供的直播方法或图5所示实施例提供的直播方法的相关步骤。
本发明实施例还提供了一种包含指令的计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行图4所示实施例提供的直播方法或图5所示实施例提供的直播方法的相关步骤。
本发明中术语“A和B的至少一种”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和B的至少一种,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (17)

1.一种直播方法,其特征在于,用于直播系统的第一代理服务器,所述直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在所述每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,所述第一代理服务器为部署在第一机房中的代理服务器,所述第一机房为所述多个机房中的任一机房,所述方法包括:
接收第一主播服务器发送的直播数据,所述第一主播服务器为部署在所述第一机房中的主播服务器,所述直播数据是第一主播客户端采集到直播数据后向所述第一主播服务器发送的数据,所述第一主播客户端为接入所述第一主播服务器的主播客户端;
向第二代理服务器发送所述直播数据,以便于所述第二代理服务器将所述直播数据分发至第二机房中的目标观众服务器,所述目标观众服务器用于将所述直播数据分发至接入所述目标观众服务器的目标观众客户端,所述第二机房为所述多个机房中除所述第一机房之外的任一机房,所述第二代理服务器为部署在所述第二机房中的代理服务器。
2.根据权利要求1所述的方法,其特征在于,在所述向第二代理服务器发送所述直播数据之前,所述方法还包括:
接收所述第二代理服务器发送的直播订阅消息,所述直播订阅消息包括所述目标观众客户端的标识,所述直播订阅消息是所述目标观众客户端向所述目标观众服务器发送,并由所述目标观众服务器转发给所述第二代理服务器的消息;
所述向第二代理服务器发送所述直播数据,包括:
根据所述直播订阅消息,向所述第二代理服务器发送直播消息,所述直播消息包括所述直播数据和所述目标观众客户端的标识,所述目标观众服务器用于根据所述目标观众客户端的标识将所述直播数据分发至所述目标观众客户端。
3.根据权利要求2所述的方法,其特征在于,所述直播系统还包括管理设备,所述接收所述第二代理服务器发送的直播订阅消息,包括:
接收所述第二代理服务器通过所述管理设备发送的直播订阅消息。
4.一种直播方法,其特征在于,用于直播系统的第二代理服务器,所述直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在所述每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,所述第二代理服务器为部署在第二机房中的代理服务器,所述方法包括:
接收第一代理服务器发送的直播数据,所述直播数据是第一主播客户端采集到直播数据后向第一主播服务器发送,并由所述第一主播服务器转发给第一代理服务器的数据,所述第一代理服务器为部署在第一机房中的代理服务器,所述第一主播服务器为部署在所述第一机房中的主播服务器,所述第一主播客户端为接入所述第一主播服务器的主播客户端,所述第一机房为所述多个机房中的任一机房,所述第二机房为所述多个机房中除所述第一机房之外的任一机房;
将所述直播数据分发至所述第二机房中的目标观众服务器,所述目标观众服务器用于将所述直播数据分发至接入所述目标观众服务器的目标观众客户端。
5.根据权利要求4所述的方法,其特征在于,在所述接收第一代理服务器发送的直播数据之前,所述方法还包括:
接收所述目标观众服务器发送的直播订阅消息,所述直播订阅消息包括所述目标观众客户端的标识,所述直播订阅消息是所述目标观众客户端向所述目标观众服务器发送的消息;
向所述第一代理服务器发送所述直播订阅消息;
所述接收第一代理服务器发送的直播数据,包括:
接收所述第一代理服务器发送的直播消息,所述直播消息包括所述直播数据和所述目标观众客户端的标识;
所述将所述直播数据分发至所述第二机房中的目标观众服务器,包括:
将所述直播消息分发至所述第二机房中的目标观众服务器,所述目标观众服务器用于根据所述目标观众客户端的标识将所述直播数据分发至所述目标观众客户端。
6.根据权利要求5所述的方法,其特征在于,所述直播系统还包括管理设备,所述向所述第一代理服务器发送所述直播订阅消息,包括:
通过所述管理设备向所述第一代理服务器发送所述直播订阅消息。
7.一种直播装置,其特征在于,用于直播系统的第一代理服务器,所述直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在所述每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,所述第一代理服务器为部署在第一机房中的代理服务器,所述第一机房为所述多个机房中的任一机房,所述装置包括:
第一接收模块,用于接收第一主播服务器发送的直播数据,所述第一主播服务器为部署在所述第一机房中的主播服务器,所述直播数据是第一主播客户端采集到直播数据后向所述第一主播服务器发送的数据,所述第一主播客户端为接入所述第一主播服务器的主播客户端;
发送模块,用于向第二代理服务器发送所述直播数据,以便于所述第二代理服务器将所述直播数据分发至第二机房中的目标观众服务器,所述目标观众服务器用于将所述直播数据分发至接入所述目标观众服务器的目标观众客户端,所述第二机房为所述多个机房中除所述第一机房之外的任一机房,所述第二代理服务器为部署在所述第二机房中的代理服务器。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第二接收模块,用于接收所述第二代理服务器发送的直播订阅消息,所述直播订阅消息包括所述目标观众客户端的标识,所述直播订阅消息是所述目标观众客户端向所述目标观众服务器发送,并由所述目标观众服务器转发给所述第二代理服务器的消息;
所述发送模块,用于根据所述直播订阅消息,向所述第二代理服务器发送直播消息,所述直播消息包括所述直播数据和所述目标观众客户端的标识,所述目标观众服务器用于根据所述目标观众客户端的标识将所述直播数据分发至所述目标观众客户端。
9.根据权利要求8所述的装置,其特征在于,所述直播系统还包括管理设备,所述第二接收模块,用于接收所述第二代理服务器通过所述管理设备发送的直播订阅消息。
10.一种直播装置,其特征在于,用于直播系统的第二代理服务器,所述直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在所述每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,所述第二代理服务器为部署在第二机房中的代理服务器,所述装置包括:
第一接收模块,用于接收第一代理服务器发送的直播数据,所述直播数据是第一主播客户端采集到直播数据后向第一主播服务器发送,并由所述第一主播服务器转发给第一代理服务器的数据,所述第一代理服务器为部署在第一机房中的代理服务器,所述第一主播服务器为部署在所述第一机房中的主播服务器,所述第一主播客户端为接入所述第一主播服务器的主播客户端,所述第一机房为所述多个机房中的任一机房,所述第二机房为所述多个机房中除所述第一机房之外的任一机房;
第一发送模块,用于将所述直播数据分发至所述第二机房中的目标观众服务器,所述目标观众服务器用于将所述直播数据分发至接入所述目标观众服务器的目标观众客户端。
11.根据权利要求10所述的装置,其特征在于,所述装置还包括:
第二接收模块,用于接收所述目标观众服务器发送的直播订阅消息,所述直播订阅消息包括所述目标观众客户端的标识,所述直播订阅消息是所述目标观众客户端向所述目标观众服务器发送的消息;
第二发送模块,用于向所述第一代理服务器发送所述直播订阅消息;
所述第一接收模块,用于接收所述第一代理服务器发送的直播消息,所述直播消息包括所述直播数据和所述目标观众客户端的标识;
所述第一发送模块,用于将所述直播消息分发至所述第二机房中的目标观众服务器,所述目标观众服务器用于根据所述目标观众客户端的标识将所述直播数据分发至所述目标观众客户端。
12.根据权利要求11所述的装置,其特征在于,所述直播系统还包括管理设备,所述第二发送模块,用于通过所述管理设备向所述第一代理服务器发送所述直播订阅消息。
13.一种服务器,其特征在于,所述服务器为直播系统的第一代理服务器,所述直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在所述每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,所述第一代理服务器为部署在第一机房中的代理服务器,所述第一机房为所述多个机房中的任一机房,所述服务器包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为:
接收第一主播服务器发送的直播数据,所述第一主播服务器为部署在所述第一机房中的主播服务器,所述直播数据是第一主播客户端采集到直播数据后向所述第一主播服务器发送的数据,所述第一主播客户端为接入所述第一主播服务器的主播客户端;
向第二代理服务器发送所述直播数据,以便于所述第二代理服务器将所述直播数据分发至第二机房中的目标观众服务器,所述目标观众服务器用于将所述直播数据分发至接入所述目标观众服务器的目标观众客户端,所述第二机房为所述多个机房中除所述第一机房之外的任一机房,所述第二代理服务器为部署在所述第二机房中的代理服务器。
14.一种服务器,其特征在于,所述服务器为直播系统的第二代理服务器,所述直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在所述每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,所述第二代理服务器为部署在第二机房中的代理服务器,所述服务器包括:
处理器;
用于存储所述处理器的可执行指令的存储器;
其中,所述处理器被配置为:
接收第一代理服务器发送的直播数据,所述直播数据是第一主播客户端采集到直播数据后向第一主播服务器发送,并由所述第一主播服务器转发给第一代理服务器的数据,所述第一代理服务器为部署在第一机房中的代理服务器,所述第一主播服务器为部署在所述第一机房中的主播服务器,所述第一主播客户端为接入所述第一主播服务器的主播客户端,所述第一机房为所述多个机房中的任一机房,所述第二机房为所述多个机房中除所述第一机房之外的任一机房;
将所述直播数据分发至所述第二机房中的目标观众服务器,所述目标观众服务器用于将所述直播数据分发至接入所述目标观众服务器的目标观众客户端。
15.一种直播系统,其特征在于,所述直播系统包括:部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在所述每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,部署在所述多个机房中的代理服务器包括第一代理服务器和第二代理服务器,所述第一代理服务器为部署在第一机房中的代理服务器,所述第二代理服务器为部署在第二机房中的代理服务器,所述第一机房为所述多个机房中的任一机房,所述第二机房为所述多个机房中除所述第一机房之外的任一机房,
所述第一代理服务器包括权利要求7至9任一所述的直播装置,所述第二代理服务器包括权利要求10至12任一所述的直播装置;或者,
所述第一代理服务器为权利要求13所述的服务器,所述第二代理服务器为权利要求14所述的服务器。
16.一种存储介质,其特征在于,当所述存储介质中的指令由服务器的处理器执行时,使得所述服务器能够执行一种直播方法,所述服务器为直播系统的第一代理服务器,所述直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在所述每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,所述第一代理服务器为部署在第一机房中的代理服务器,所述第一机房为所述多个机房中的任一机房,所述直播方法包括:
接收第一主播服务器发送的直播数据,所述第一主播服务器为部署在所述第一机房中的主播服务器,所述直播数据是第一主播客户端采集到直播数据后向所述第一主播服务器发送的数据,所述第一主播客户端为接入所述第一主播服务器的主播客户端;
向第二代理服务器发送所述直播数据,以便于所述第二代理服务器将所述直播数据分发至第二机房中的目标观众服务器,所述目标观众服务器用于将所述直播数据分发至接入所述目标观众服务器的目标观众客户端,所述第二机房为所述多个机房中除所述第一机房之外的任一机房,所述第二代理服务器为部署在所述第二机房中的代理服务器。
17.一种存储介质,其特征在于,当所述存储介质中的指令由服务器的处理器执行时,使得所述服务器能够执行一种直播方法,所述服务器为直播系统的第二代理服务器,所述直播系统包括部署在多个机房中的代理服务器,以及,部署在每个机房中的至少一个直播服务器,部署在所述每个机房中的直播服务器包括主播服务器和观众服务器中的至少一种,所述第二代理服务器为部署在第二机房中的代理服务器,所述直播方法包括:
接收第一代理服务器发送的直播数据,所述直播数据是第一主播客户端采集到直播数据后向第一主播服务器发送,并由所述第一主播服务器转发给第一代理服务器的数据,所述第一代理服务器为部署在第一机房中的代理服务器,所述第一主播服务器为部署在所述第一机房中的主播服务器,所述第一主播客户端为接入所述第一主播服务器的主播客户端,所述第一机房为所述多个机房中的任一机房,所述第二机房为所述多个机房中除所述第一机房之外的任一机房;
将所述直播数据分发至所述第二机房中的目标观众服务器,所述目标观众服务器用于将所述直播数据分发至接入所述目标观众服务器的目标观众客户端。
CN201710485762.9A 2017-06-23 2017-06-23 直播方法、装置及系统、服务器、存储介质 Active CN107332894B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710485762.9A CN107332894B (zh) 2017-06-23 2017-06-23 直播方法、装置及系统、服务器、存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710485762.9A CN107332894B (zh) 2017-06-23 2017-06-23 直播方法、装置及系统、服务器、存储介质

Publications (2)

Publication Number Publication Date
CN107332894A CN107332894A (zh) 2017-11-07
CN107332894B true CN107332894B (zh) 2020-08-11

Family

ID=60194759

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710485762.9A Active CN107332894B (zh) 2017-06-23 2017-06-23 直播方法、装置及系统、服务器、存储介质

Country Status (1)

Country Link
CN (1) CN107332894B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111049871B (zh) * 2018-10-15 2023-04-07 广州虎牙信息科技有限公司 消息推送方法、消息管理系统、服务器及计算机存储介质
CN111835697B (zh) 2019-04-23 2021-10-01 华为技术有限公司 一种媒体流发送方法、装置、设备和系统
CN114666614A (zh) * 2019-04-23 2022-06-24 华为技术有限公司 一种媒体流发送方法、装置和设备
CN113077265B (zh) * 2020-12-08 2021-11-30 鑫绪(上海)信息技术服务有限公司 直播客户信誉管理系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101729273A (zh) * 2008-10-27 2010-06-09 中国移动通信集团公司 一种流媒体分发系统、方法及装置
CN105450615A (zh) * 2014-09-02 2016-03-30 中国移动通信集团广东有限公司 多媒体的直播方法、系统、服务器、第一终端以及第二终端
CN106790197A (zh) * 2016-12-30 2017-05-31 北京奇虎科技有限公司 一种流数据的跨域传输方法、装置和系统
CN106851343A (zh) * 2017-01-23 2017-06-13 百度在线网络技术(北京)有限公司 用于视频直播的方法和装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9906590B2 (en) * 2015-08-20 2018-02-27 Verizon Digital Media Services Inc. Intelligent predictive stream caching
CN105389219A (zh) * 2015-10-15 2016-03-09 北京乐动卓越科技有限公司 一种跨机房通讯的方法和系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101729273A (zh) * 2008-10-27 2010-06-09 中国移动通信集团公司 一种流媒体分发系统、方法及装置
CN105450615A (zh) * 2014-09-02 2016-03-30 中国移动通信集团广东有限公司 多媒体的直播方法、系统、服务器、第一终端以及第二终端
CN106790197A (zh) * 2016-12-30 2017-05-31 北京奇虎科技有限公司 一种流数据的跨域传输方法、装置和系统
CN106851343A (zh) * 2017-01-23 2017-06-13 百度在线网络技术(北京)有限公司 用于视频直播的方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"从直播CDN的原理说起,谈如何解决延时和连麦的老难题";互联网架构师;《http://www.sohu.com/a/117531087_468650》;20161028;正文第1-5页 *

Also Published As

Publication number Publication date
CN107332894A (zh) 2017-11-07

Similar Documents

Publication Publication Date Title
CN107332894B (zh) 直播方法、装置及系统、服务器、存储介质
CN105611422B (zh) 基于多媒体榜单的在线直播方法及装置
EP3547748B1 (en) Method and system for guiding service application traffic
WO2016202200A1 (zh) 数据校验方法、装置和智能电视系统
US9172594B1 (en) IPv6 to web architecture
WO2019153722A1 (zh) 终端通信的方法、装置、终端及存储介质
CN111246311A (zh) 数据传输的方法、装置、存储介质及电子设备
SG176862A1 (en) Method and device for a light host management protocol on multicast capable router
US20200244753A1 (en) Method, system and server for stream-pushing
US11843642B1 (en) Serverless signaling in peer-to-peer session initialization
CN103167327A (zh) 信息互动方法、装置及系统
US20230107093A1 (en) Data download method and apparatus, computer device, and storage medium
CN112187911A (zh) 基于网络隔离的消息传输方法、装置、存储介质及系统
CN102118325B (zh) 一种配置聊天客户终端的方法及装置、聊天客户终端
EP2974159B1 (en) Method, device and system for voice communication
CN115664989A (zh) 一种云桌面的监控系统及方法
EP4096328A1 (en) Network function registration method and apparatus, network function discovery method and apparatus, and device and medium
CN112217910B (zh) 视频服务访问方法、装置、网络设备和存储介质
CN108668151B (zh) 音视频交互方法及装置
CN109818999B (zh) 数据传输方法和装置
EP1258127A2 (en) Method and apparatus for making a computational service highly available
WO2016202203A1 (zh) 设备连接方法、装置和智能电视系统
KR20150022440A (ko) Mac 주소를 이용하는 이더넷 네트워크 장치 및 방법
CN114786047B (zh) 多屏互动的实现方法及装置、存储介质及电子设备
CN110892686B (zh) 向音频/视频接收器设备提供信息的方法和对应的装置

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20221129

Address after: 31a, 15 / F, building 30, maple mall, bangrang Road, Brazil, Singapore

Patentee after: Baiguoyuan Technology (Singapore) Co.,Ltd.

Address before: 511442 room 2705, 27 / F, building B-1, Wanda Plaza North, Wanbo business district, 79 Wanbo 2nd Road, Nancun Town, Panyu District, Guangzhou City, Guangdong Province

Patentee before: GUANGZHOU BAIGUOYUAN INFORMATION TECHNOLOGY Co.,Ltd.