CN112714186A - 推流服务器的分配方法、媒体流的推送方法、装置、存储介质及电子设备 - Google Patents
推流服务器的分配方法、媒体流的推送方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN112714186A CN112714186A CN202011620635.3A CN202011620635A CN112714186A CN 112714186 A CN112714186 A CN 112714186A CN 202011620635 A CN202011620635 A CN 202011620635A CN 112714186 A CN112714186 A CN 112714186A
- Authority
- CN
- China
- Prior art keywords
- server
- flow
- push
- terminal
- plug
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B5/00—Electrically-operated educational appliances
- G09B5/08—Electrically-operated educational appliances providing for individual presentation of information to a plurality of student stations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/508—Monitor
Abstract
本申请实施例公开了一种推流服务器的分配方法、媒体流的推送方法、装置、存储介质及电子设备,属于在线教育领域。房间管理服务器在课程开始时,确定虚拟教室内的学生终端和老师终端,在推流集群中为老师终端和学生终端分配同一个目标推流服务器,指示目标推流服务器向虚拟教室内的终端设备推送媒体流,通过同一个目标推流服务器实现对虚拟教室内的老师终端和学生终端的推流,减少了相关技术中通过多个推流服务器进行推流带来的推流服务器利用率的问题,本申请在上课时减少推流服务器的数量,可以提高推流集群中推流服务器的利用率。
Description
技术领域
本申请涉及在线教育领域,尤其涉及一种推流服务器的分配方法、媒体流的推送方法、装置、存储介质及电子设备。
背景技术
随着互联网的发展,在线教育受到越来越多人的欢迎,在线教育可以不限时间和地点灵活的学习,充分提升自身的技能。相对于传统的使用固定教室更移动便捷化,在画面、音频更具视觉化和更具吸引力。
在在线教育的网络架构中,推流集群包括多个推流服务器,在向终端设备进行推流之前,推流集群中的控制器来采用轮询的方式为学生终端选择至少一个推流服务器,以及为老师终端选择至少一个推流服务器,然后利用选择的推流服务器分别为学生终端和老师终端推流,然而目前这种分配推流服务器存在资源利用率不高的问题。
发明内容
本申请实施例提供了的推流服务器的分配方法、装置、存储介质及电子设备,可以解决推流集群中推流服务器的利用率不高的问题。所述技术方案如下:
第一方面,本申请实施例提供了一种媒体服务器的分配方法,所述方法包括:
接收上课请求消息;其中,所述上课请求消息携带房间号;
确定房间号对应的虚拟教室内的终端设备;其中,所述终端设备包括学生终端和老师终端;
在推流集群中为所述终端设备分配一个目标推流服务器;
指示所述目标推流服务器为所述虚拟教室内的终端设备推送媒体流。
在一种可能的设计中,所述在推流集群中为所述终端设备分配一个目标推流服务器,包括:
获取推流集群中各个推流服务器的负荷状态参数的参数值;
根据各个推流服务器的负荷状态参数在所述推流集群中选择一个目标推流服务器。
在一种可能的设计中,所述获取推流集群中各个推流服务器的负荷状态参数值,包括:
向共享服务器发送负荷状态查询请求;
接收所述共享服务器响应于所述负荷状态查询请求返回的负荷状态查询响应;其中,所述负荷状态查询响应携带各个推流服务器的负荷状态参数的参数值;
解析所述负荷状态查询响应得到各个推流服务器的负荷状态参数的参数值。
在一种可能的设计中,所述根据各个推流服务器的负荷状态参数的参数值从所述推流集群中选择一个目标推流服务器,包括:
根据所述负荷状态参数的参数值从所述推流集群中选择N个负荷最轻的推流服务器;其中,N为大于1的整数;
从所述N个负荷最轻的推流服务器中随机选择一个推流服务器作为目标推流服务器;或
根据所述负荷状态参数从所述推流集群中选择负荷最轻的推流服务器作为目标推流服务器。
在一种可能的设计中,所述指示所述目标推流服务器向所述房间号对应的虚拟教室推送媒体流,包括:
向所述目标推流服务器发送推流任务指示;其中,所述推流任务指示携带素材标识和房间号,所述推流任务指示用于指示所述目标推流服务器从素材库中选择所述素材标识对应的上课素材,以及根据所述上课素材向所述房间号对应的虚拟教室推送媒体流。
在一种可能的设计中,所述终端设备还包括监课终端。
第二方面,本申请提供了一种媒体流的推送方法,其特征在于,包括:
响应于房间管理服务器的推流任务指示,确定虚拟教室内的学生终端和老师终端;其中,所述推流任务指示携带所述虚拟教室的房间号;
将来自所述学生终端的学生媒体流推送给所述老师终端;
以及将来自所述老师终端的老师媒体流推送给所述学生终端。
在一种可能的设计中,在所述虚拟教室中存在监课终端时,将所述学生媒体流和老师媒体流进行融合后生成融合媒体流;
将所述融合媒体流推送给所述监课终端。
第三方面,本申请实施例提供了一种推流服务器的分配装置,所述推流服务器的分配装置包括:
收发单元,用于接收上课请求消息;其中,所述上课请求消息携带房间号;
确定单元,用于确定房间号对应的虚拟教室内的终端设备;其中,所述终端设备包括学生终端和老师终端;
分配单元,用于在推流集群中为所述终端设备分配一个目标推流服务器;
指示单元,用于指示所述目标推流服务器为所述虚拟教室内的终端设备推送媒体流。
第四方面,本申请提供了一种媒体流的推送装置,包括:
确定单元,用于响应于房间管理服务器的推流任务指示,确定虚拟教室内的学生终端和老师终端;其中,所述推流任务指示携带所述虚拟教室的房间号;
推送单元,用于将来自所述学生终端的学生媒体流推送给所述老师终端;
以及将来自所述老师终端的老师媒体流推送给所述学生终端。
第五方面,本申请实施例提供一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行上述的方法步骤。
第六方面,本申请实施例提供一种电子设备,可包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行上述的方法步骤。
本申请一些实施例提供的技术方案带来的有益效果至少包括:
房间管理服务器获取推流集群中个推流服务器的负荷状态参数的参数值,根据负荷状态参数的参数值从推流集群中选择一个目标推流服务器,指示目标推流服务器向虚拟教室中推送媒体流,房间管理服务器实现推流服务器的选择以及推流服务器实现推流,将房间控制服务器和推流服务器功能独立设置,降低耦合性,便于网络架构后续进行平滑升级。同时,通过负荷状态参数的参数值选择推流服务器,可以提高推流服务器上资源的利用率,实现负载均衡。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种网络架构图;
图2是本申请实施例提供的推流服务器的分配方法的流程示意图;
图3是本申请实施例提供的推流服务器的分配方法的另一流程示意图;
图4是本申请实施例提供的媒体流的推送方法的流程示意图;
图5是本申请实施例提供的一种装置的结构示意图;
图6是本申请实施例提供的一种装置的另一结构示意图;
图7是本申请实施例提供的一种装置的另一结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施例方式作进一步地详细描述。
图1示出了可以应用于本申请的推流服务器的分配方法或推流服务器的分配装置的示例性系统架构。
如图1所示,系统架构可以包括:房间管理服务器11、推流集群12、学生终端13、老师终端14和监课终端15。
其中,系统架构中的各个设备之间可以采用无线通信链路,也可以采用有线通信链路,例如:有线通信链路包括光纤、双绞线或同轴电缆的,无线通信链路包括蓝牙通信链路、无线保真(WIreless-FIdelity,Wi-Fi)通信链路或微波通信链路等。
其中,房间管理服务器11与推流集群12中的各个推流服务器均可以通行,房间管理服务器11的数量可以为一个或多个,多个房间管理服务器11组成房间管理服务器集群。房间管理服务器11可以监测推流集群12中各个推流服务器的负荷状态参数的参数值,负荷状态参数的参数值,负荷状态参数包括但不限于CPU占用率、内存占用率、磁盘IO数量中的一种或多种。
其中,推流集群12包括多个推流服务器,每个推流服务器管理多个终端设备,终端设备可以为老师终端、学生终端和监课终端。推流服务器接收到房间管理服务器发送的推流任务指示时,向虚拟教室内的各个终端推送媒体流,学生终端的显示屏上显示课程的视频画面,学生在观看视频画面的同时也可以实现对老师进行互动。
其中,本申请的上课方式可以是一对一或一对多,即一个教师对应一个学生或一个教师对应多个学生。相应的,在一对一的教学方式中,一个用于教师上课的终端设备和一个用于学生上课的终端设备之间进行通信;在一对多的教学方式中,一个用于教师上课的终端设备和多个用于学生上课的终端设备之间进行通信。
本申请的终端设备可以安装有各种通信客户端应用,例如:视频录制应用、视频播放应用、语音交互应用、搜索类应用、及时通信工具、邮箱客户端、社交平台软件等。
终端设备可以是硬件,也可以是软件。当终端设备为硬件时,可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携式计算机和台式计算机等等。终端设备为软件时,可以是安装上上述所列举的电子设备中。其可以实现呈多个软件或软件模块(例如:用来提供分布式服务),也可以实现成单个软件或软件模块,在此不作具体限定。
终端设备为硬件时,其上还可以安装有显示设备和摄像头,显示设备显示可以是各种能实现显示功能的设备,摄像头用于采集视频流;例如:显示设备可以是阴极射线管显示器(cathode ray tubedisplay,简称CR)、发光二极管显示器(light-emitting diodedisplay,简称LED)、电子墨水屏、液晶显示屏(liquid crystal display,简称LCD)、等离子显示面板(plasma display panel,简称PDP)等。用户可以利用学生终备和老师终端上的的显示设备,来查看显示的文字、图片、视频等信息。
需要说明的是,本申请实施例提供的推流服务器的分配方法一般由房间管理服务器102执行,相应的,推流服务器的分配装置一般设置于房间管理服务器中。
房间管理服务器可以是提供各种服务的服务器,房间管理服务器可以是硬件,也可以是软件。当房间管理服务器为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当房间管理服务器为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块,在此不做具体限定。
应理解,图1中的终端设备、网络和服务器的数目仅是示意性的。根据实现需要,可以是任意数量的终端设备、网络和服务器。
下面将结合附图2-附图3,对本申请实施例提供的推流服务器的分配方法进行详细介绍。其中,本申请实施例中的推流服务器的分配装置可以是房间管理服务器。
请参见图2,为本申请实施例提供了一种推流服务器的分配方法的流程示意图。如图2所示,本申请实施例的所述方法可以包括以下步骤:
S201、接收上课请求消息。
其中,学生在上课之前,通过终端设备在业务控制台上预约课程,业务控制台可包括至少一个服务器,业务控制台设置课程的上课开始时刻、上课结束时刻和科目内容等信息。在到达课程的上课时间时,业务控制台会为该课程分配一个虚拟教室和该虚拟教室的房间号,房间号用于唯一表示虚拟教室的身份,以及向房间管理服务器发送上课请求消息,上课请求消息分配的虚拟教室的房间号。
虚拟教室为业务控制台分配的用于学生和老师上课的逻辑空间,虚拟教室包括教室上课的终端设备和学生上课的终端设备,虚拟教室中的终端设备相互之间可以进行语音对讲、文字聊天和播放视频的操作。
S202、确定房间号对应的虚拟教室内的终端设备。
其中,终端设备包括学生终端或老师终端,学生终端的数量为一个或多个,老师终端的数量为一个或多个。在课程开始时,学生通过学生终端加入到虚拟教室中,老师通过老师终端加入到虚拟教室中,房间管理服务器可以统计虚拟教室中当前存在的老师终端和学生终端的数量。
S203、在推流集群中为终端设备分配一个目标推流服务器。
其中,推流集群中包括多个推流服务器,推流服务器可以根据一定的规则从推流服务器中为虚拟教室中的学生终端和老师终端分配一个目标推流服务器。
实施例a:房间管理服务器随机从推流集群中为终端设备分配一个目标推流服务器,例如:房间管理服务器随机生成一个随机数,然后根据推流集群的服务器数量对该随机数进行求模运算得到模值,将模值对应的推流服务器作为目标推流服务器。
实施例b:房间管理服务器监测推流集群中各个推流服务器的负荷状态参数的参数值,根据负荷状态参数的参数值在推流集群中选择负荷最轻的推流服务器作为目标推流服务器。
实施例c:房间管理服务器根据所述负荷状态参数的参数值从所述推流集群中选择N个负荷最轻的推流服务器;其中,N为大于1的整数;
从所述N个负荷最轻的推流服务器中随机选择一个推流服务器作为目标推流服务器;或
根据所述负荷状态参数从所述推流集群中选择负荷最轻的推流服务器作为目标推流服务器;
其中,负荷状态参数表示推流服务器的负荷轻重程度,负荷状态参数包括但不限于:推流任务数量、终端设备数量、CPU占用率、磁盘IO数量和内存占用率中的一种或多种,推流任务数量表示推流服务器上当前承载的推流路线的数量,推流服务器支持多路推流,推流任务数越大则表示推流服务器的负荷越重,反之,则推流服务器的负荷越轻;终端设备数量表示虚拟教室中当前接入的终端设备的数量,终端设备可以是学生的终端设备或老师的终端设备,终端设备数量越大,推流服务器的负荷越重,反之,则推流服务器的负荷越轻;CPU占用率表示推流服务器上CPU资源的占用情况,CPU占用率越高表示推流服务器的负荷越重,反之则推流服务器的负荷越轻;内存占用率表示推流服务器上内存资源的占用情况,内存占用率越高表示推流服务器的负荷越重,反之则推流服务器的负荷越轻;磁盘IO数量表示单位时间内磁盘上IO操作的数量,磁盘IO数量越大则表示推流服务器的负荷越重,反之则表示推流服务器的负荷越轻。房间管理服务器获取负荷状态参数的参数值的方法可以是直接从推流服务器上获取,或间接的从第三方设备获取,本申请不作限制。
S204、指示目标推流服务器向虚拟教室内的终端设备推送媒体流。
其中,房间管理服务器向目标推流服务器发送推流任务指示,推流任务指示携带房间号,房间号为虚拟教室的标识,目标推流服务器响应于推流任务指示向虚拟教室中的老师终端和学生终端推送媒体流,即目标推流服务器将来自学生终端的学生媒体流转发给老师终端,以及将来自老师终端的老师媒体流转发给学生终端。
本申请实施例的方案在执行时,房间管理服务器在课程开始时,确定虚拟教室内的学生终端和老师终端,在推流集群中为老师终端和学生终端分配同一个目标推流服务器,指示目标推流服务器向虚拟教室内的终端设备推送媒体流,通过同一个目标推流服务器实现对虚拟教室内的老师终端和学生终端的推流,减少了相关技术中通过不同的推流服务器进行推流带来的推流服务器利用率的问题,本申请在上课时减少推流服务器的数量,可以提高推流集群中推流服务器的利用率。
请参见图3,为本申请实施例提供了一种推流服务器的分配方法的流程示意图,本实施例的执行主体为房间管理服务器。该推流服务器的分配方法可以包括以下步骤:
S301、接收业务控制台的上课请求消息。
其中,学生在上课之前,通过终端设备在业务控制台上预约课程,业务控制台可包括至少一个服务器,业务控制台设置课程的上课开始时刻、上课结束时刻和科目内容等信息。在到达课程的上课时间时,业务控制台会为该课程分配一个虚拟教室和该虚拟教室的房间号,房间号用于唯一表示虚拟教室的身份,以及向房间管理服务器发送上课请求消息,上课请求消息分配的虚拟教室的房间号,房间管理服务器接收来自业务控制台的上课请求消息。
虚拟教室为业务控制台分配的用于学生和老师上课的逻辑空间,虚拟教室包括教室上课的终端设备和学生上课的终端设备,虚拟教室中的终端设备相互之间可以进行语音对讲、文字聊天和播放视频的操作。
S302、确定房间号对应的虚拟教室内的终端设备。
其中,终端设备包括学生终端或老师终端,学生终端的数量为一个或多个,老师终端的数量为一个或多个。在课程开始时,学生通过学生终端加入到虚拟教室中,老师通过老师终端加入到虚拟教室中,房间管理服务器可以统计虚拟教室中当前存在的老师终端和学生终端的数量。业务控制台可存储虚拟教室中包括的终端设备的标识,房间管理服务器可以在业务控制台中确定房间号对应的虚拟教室内的终端设备。
例如:业务控制台存储的房间号和终端设备的标识的映射关系为:(classroom#10120:student_device1、student_device2、student_device3、student_device4、teacher_device1),房间管理服务器在业务控制台中确定房间号为10120的虚拟教室内存在的4个学生终端和1个老师终端。
进一步的,虚拟教室内还包括监课终端,监课终端为监课人员使用的终端,监课人员通过监课终端查看上课情况,监课终端向目标推流服务器发送拉流请求,目标推流服务器会将虚拟教室内的学生媒体流和老师媒体流进行融合,将融合的媒体流推送给监课终端,融合的方法可以是:将来自学生终端的视频流和老师终端的视频流根据像素融合为一路融合视频流,以将来自学生终端的音频流和来自老师终端的音频流融合为一路融合音频流,然后将融合视频流和融合媒体流合成融合媒体流,相对于现有技术需要使用多个推流服务器向监课终端推流相比,可以提高推流集群中推流服务器的利用率。
S303、向共享服务器发送负荷状态查询请求。
其中,共享服务器存储有各个推流服务器的负荷状态参数的参数值,共享服务器可以为redis服务器。负载均衡服务器会周期性的监测推流集群中各个推流服务器的负荷状态参数的参数值,然后将监测到的负荷状态参数的参数值通过房间管理服务器上报给共享服务器,这样共享服务器中存储有最新的各个推流服务器的负荷状态参数的参数值。负载均衡服务器在选择上报的房间管理服务器时,可以采用轮询方式在房间管理服务器集群中选择一个房间管理服务器来上报,或者在房间管理服务器集群中选择一个负荷最轻的房间管理服务器来上报。
对于房间管理服务器集群中的任意一个房间管理服务器来说,房间管理服务器向共享服务器发送负荷状态查询请求,负荷状态查询请求用于请求查询推流集群中各个推流服务器的负荷状态参数的参数值。
S304、接收共享服务器响应于负荷状态查询请求返回的负荷状态查询响应。
其中,共享服务器接收来自房间管理服务器的负荷状态查询请求时,向房间管理服务器返回负荷状态查询响应,负荷状态查询响应携带各个推流服务器的标识和负荷状态参数的参数值,负荷状态响应可以包括消息头和消息体,各个推流服务器的标识和负荷状态参数的参数值位于消息体中。
例如:推流集群包括推流服务器1、推流服务器2、推流服务器3和推流服务器4,负荷状态参数为CPU占用率,共享服务器响应于负荷状态查询请求返回的负荷状态查询响应包括:(推流服务器1,5%),(推流服务器2,10%),(推流服务器3,8%),(推流服务器4,9%)。
S305、解析负荷状态查询响应得到各个推流服务器的负荷状态参数的参数值。
其中,房间管理服务器从负荷状态查询响应的消息体中解析出各个推流服务器的负荷状态参数的参数值。
在另一种可能的实施方式中,房间管理服务器获取各个推流服务器的负荷状态参数的参数值的方法可以包括:房间管理服务器向推流集群中的各个推流服务器广播负荷状态查询请求,各个推流服务器接收到负荷状态查询请求,响应于负荷状态查询请求向房间管理服务器发送携带服务器标识和负荷状态参数的参数值的负荷状态查询响应。
例如:推流集群包括推流服务器1、推流服务器2、推流服务器3和推流服务器4,负荷状态参数为CPU占用率,房间管理服务器向推流集群中广播负荷状态查询请求。推流服务器1响应该负荷状态查询请求,向房间管理服务器发送携带推流服务器1的标识和CPU占用率5%的负荷状态查询响应;推流服务器2响应该负荷状态查询请求,向房间管理服务器发送携带推流服务器2的标识和CPU占用率10%的负荷状态查询响应;推流服务器3响应该负荷状态查询请求,向房间管理服务器发送携带推流服务器3的标识和CPU占用率8%的负荷状态查询响应;推流服务器4响应该负荷状态查询请求,向房间管理服务器发送携带推流服务器4的标识和CPU占用率9%的负荷状态查询响应。
在另一种可能的实施方式中,负载均衡服务器周期性的监测推流集群中各个推流服务器的负荷状态参数的参数值,将各个推流服务器的负荷状态参数的参数值存储到本地。房间服务器向负载均衡服务器发送负荷状态参数查询请求,负载均衡服务器响应于该负荷状态参数查询请求向房间管理服务器返回负荷状态查询响应,负荷状态查询响应携带各个推流服务器的标识和对应的负荷状态参数的参数值。
在另一种可能的实施例方式中,一个房间管理服务器管辖的推流服务器的数量是有限制的,且其管辖的推流服务器为推流集群中的部分推流服务器,那么房间管理服务器并不需要获取推流集群中所有推流服务器的负荷状态参数的参数值,只需要其管辖的推流服务器的负荷状态参数的参数值。
例如:推流集群包括推流服务器1、推流服务器2、推流服务器3和推流服务器4,房间管理服务器1管辖推流服务器1和推流服务器2,房间管理服务器1向共享服务器发送携带推流服务器1和推流服务器2的标识的负荷状态查询请求,然后共享服务器响应于该负荷状态查询请求生成携带推流服务器1和推流服务器2的负荷状态参数的参数值的负荷状态查询响应。
又例如:推流集群包括推流服务器1、推流服务器2、推流服务器3和推流服务器4,房间管理服务器1管辖推流服务器1和推流服务器2,房间管理服务器1向推流服务器1发送负荷状态查询请求,推流服务器1响应于该负荷状态查询请求,向房间管理服务器1返回携带推流服务器1的负荷状态查询响应;房间管理服务器1向推理服务器2发送负荷状态查询请求,推流服务器2响应于该负荷状态查询请求,向房间管理服务器1返回携带推流服务器2的负荷状态查询响应。
S306、根据负荷状态参数的参数值从推流集群中选择N个负荷最轻的推流服务器。
其中,N为大于1的整数,根据负荷状态参数的参数值,将推流集群中的各个推流服务器根据负荷从轻到重进行升序排列,然后选择排在前面的N个推流服务器;或将推流集群中的各个推流服务器根据负荷从重到轻进行降序排列,然后选择排在后面的N个推流服务器。
S307、从N个负荷最轻的推流服务器中随机选择一个推流服务器作为目标推流服务器。
其中,随机从N个负荷最轻的推理服务器中选择目标推流服务器的方法可以是:获取当前时刻。其中,根据本地的时钟单元或网络的时钟单元获取当前时刻;将当前时刻进行哈希运算得到哈希值。其中,将当前时刻的字符串进行哈希运算得到哈希值,哈希运算的算法可以采用已知的任意一种哈希算法,根据数量N对哈希值进行求模运算得到模值,根据数量N对哈希值进行求模运算,求模运算的模值为0、1、…、N-1,在N个负荷最轻的推流服务器中确定模值对应的目标推流服务器,N个推流服务器从0开始编号,序号分别为:0、1、…、N-1,然后根据S307中计算得到的模值确定对应的目标推流服务器。
例如:N=4,4个推流服务器的编号分别为:0、1、2和3,S307中求模运算得到的模值为1,将编号为1的推流服务器作为目标推流服务器。
在另一种可能的实施方式中,根据各个推流服务器的负荷状态参数的参数值在所述推流集群中选择一个目标推流服务器,包括:
从各个推流服务器中选择负荷最轻的推流服务器作为目标推流服务器。
S308、向目标服务器发送携带房间号的推流任务指示。
其中,房间管理服务器向目标推流服务器发送推流任务指示,推流任务指示携带房间号,房间号为虚拟教室的标识,目标推流服务器响应于推流任务指示向虚拟教室中的老师终端和学生终端推送媒体流,即目标推流服务器将来自学生终端的学生媒体流转发给老师终端,以及将来自老师终端的老师媒体流转发给学生终端。
本申请实施例的方案在执行时,房间管理服务器在课程开始时,确定虚拟教室内的学生终端和老师终端,在推流集群中为老师终端和学生终端分配同一个目标推流服务器,指示目标推流服务器向虚拟教室内的终端设备推送媒体流,通过同一个目标推流服务器实现对虚拟教室内的老师终端和学生终端的推流,减少了相关技术中通过不同的推流服务器进行推流带来的推流服务器利用率的问题,本申请在上课时减少推流服务器的数量,可以提高推流集群中推流服务器的利用率。
参见图4,为本申请实施例提供的一种媒体流的推送方法的另一流程示意图,所述方法包括但不限于以下步骤:
S401、响应于房间管理服务器的推流任务指示,确定虚拟教室内的学生终端和老师终端。
其中,推流服务器接收来自房间管理服务器的推流任务指示,推流任务指示携带虚拟教室的房间号,推流服务器可以在业务控制台上获取虚拟教室内的老师终端和学生终端。
S402、将来自学生终端的学生媒体流推送给老师终端。
其中,虚拟教室中的各个学生终端通过音视频采集装置采集学生音视频数据,将学生音视频数据发送给推流服务器,推流服务器将学生音视频数据转码为学生媒体流,然后向虚拟教室内的老师终端推送学生媒体流。
S403、将来自老师终端的媒体流推送给学生终端。
其中,虚拟教室中的老师终端通过音视频采集装置采集老师音视频数据,将老师音视频数据发送给推流服务器,推流服务器将老师音视频数据转码为老师媒体流,然后向虚拟教室内的学生终端推送老师媒体流。
进一步的,在虚拟教室中存在监课终端时,将学生媒体流和老师媒体流进行融合后生成融合媒体流,将融合媒体流推送给监课终端。
其中,虚拟教室内还包括监课终端,监课终端为监课人员使用的终端,监课人员通过监课终端查看上课情况,监课终端向推流服务器发送拉流请求,推流服务器会将虚拟教室内的学生媒体流和老师媒体流进行融合,将融合的媒体流推送给监课终端,融合的方法可以是:将来自学生终端的视频流和老师终端的视频流根据像素融合为一路融合视频流,以将来自学生终端的音频流和来自老师终端的音频流融合为一路融合音频流,然后将融合视频流和融合媒体流合成融合媒体流,相对于现有技术需要使用多个推流服务器向监课终端推流相比,可以提高推流集群中推流服务器的利用率。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
请参见图5,其示出了本申请一个示例性实施例提供的推流服务器的分配装置的结构示意图。以下简称装置5,装置5可以通过软件、硬件或者两者的结合实现成为任务分发服务器的全部或一部分。装置5包括:收发单元501、确定单元502、分配单元503和指示单元504。
收发单元501,用于接收上课请求消息;其中,所述上课请求消息携带房间号;
确定单元502,用于确定房间号对应的虚拟教室内的终端设备;其中,所述终端设备包括学生终端和老师终端;
分配单元503,用于在推流集群中为所述终端设备分配一个目标推流服务器;
指示单元504,用于指示所述目标推流服务器为所述虚拟教室内的终端设备推送媒体流。
在一个或多个实施例中,所述在推流集群中为所述终端设备分配一个目标推流服务器,包括:
获取推流集群中各个推流服务器的负荷状态参数的参数值;
根据各个推流服务器的负荷状态参数的参数值在所述推流集群中选择一个目标推流服务器。
在一个或多个实施例中,所述获取推流集群中各个推流服务器的负荷状态参数的参数值,包括;
向共享服务器发送负荷状态查询请求;
接收所述共享服务器响应于所述负荷状态查询请求返回的负荷状态查询响应;其中,所述负荷状态查询响应携带各个推流服务器的负荷状态参数的参数值;
解析所述负荷状态查询响应得到各个推流服务器的负荷状态参数的参数值。
在一个或多个实施例中,所述根据各个推流服务器的负荷状态参数的参数值从所述推流集群中选择一个目标推流服务器,包括:
根据所述负荷状态参数的参数值从所述推流集群中选择N个负荷最轻的推流服务器;其中,N为大于1的整数;
从所述N个负荷最轻的推流服务器中随机选择一个推流服务器作为目标推流服务器;或
根据所述负荷状态参数从所述推流集群中选择负荷最轻的推流服务器作为目标推流服务器。
在一个或多个实施例中,所述指示所述目标推流服务器向所述房间号对应的虚拟教室推送媒体流,包括:
向所述目标推流服务器发送推流任务指示;其中,所述推流任务指示携带房间号,所述推流任务指示用于指示所述目标推流服务器将来自学生终端的学生媒体流推送给老师终端,以及将来自老师终端的媒体流推送给学生终端。
在一个或多个实施例中,所述终端设备还包括监课终端。
需要说明的是,上述实施例提供的装置5在执行推流服务器的分配方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的推流服务器的分配方法实施例属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
请参见图6,其示出了本申请一个示例性实施例提供的媒体流的推送装置的结构示意图。以下简称装置6,装置6可以通过软件、硬件或者两者的结合实现成为推流服务器的全部或一部分。装置6包括:确定单元601和推送单元602。
确定单元601,用于响应于房间管理服务器的推流任务指示,确定虚拟教室内的学生终端和老师终端;其中,所述推流任务指示携带所述虚拟教室的房间号;
推送单元602,用于将来自所述学生终端的学生媒体流推送给所述老师终端;
以及将来自所述老师终端的老师媒体流推送给所述学生终端。
在一个或多个实施例中,推送单元602还用于:
在所述虚拟教室中存在监课终端时,将所述学生媒体流和老师媒体流进行融合后生成融合媒体流;
将所述融合媒体流推送给所述监课终端。
需要说明的是,上述实施例提供的装置6在执行媒体流的推送方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的媒体流的推送方法实施例属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。
本申请实施例还提供了一种计算机存储介质,所述计算机存储介质可以存储有多条指令,所述指令适于由处理器加载并执行如上述图2-图4所示实施例的方法步骤,具体执行过程可以参见图2-图4所示实施例的具体说明,在此不进行赘述。
本申请还提供了一种计算机程序产品,该计算机程序产品存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上各个实施例所述的推流服务器的分配方法。
图7为本申请实施例提供的一种装置结构示意图,以下简称装置7,装置7可以集成于前述的房间管理服务器或推流服务器中,如图7所示,该装置包括:存储器702、处理器701、输入装置703、输出装置704和通信接口。
存储器702可以是独立的物理单元,与处理器701、输入装置703和输出装置704可以通过总线连接。存储器702、处理器701、输入装置703和输出装置704也可以集成在一起,通过硬件实现等。
存储器702用于存储实现以上方法实施例,或者装置实施例各个模块的程序,处理器701调用该程序,执行以上方法实施例的操作。
输入装置702包括但不限于键盘、鼠标、触摸面板、摄像头和麦克风;输出装置包括但限于显示屏。
通信接口用于收发各种类型的消息,通信接口包括但不限于无线接口或有线接口。
可选地,当上述实施例的分布式任务调度方法中的部分或全部通过软件实现时,装置也可以只包括处理器。用于存储程序的存储器位于装置之外,处理器通过电路/电线与存储器连接,用于读取并执行存储器中存储的程序。
处理器可以是中央处理器(central processing unit,CPU),网络处理器(network processor,NP)或者CPU和NP的组合。
处理器还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application-specific integrated circuit,ASIC),可编程逻辑器件(programmablelogic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complexprogrammable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gatearray,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。
存储器可以包括易失性存储器(volatile memory),例如存取存储器(random-access memory,RAM);存储器也可以包括非易失性存储器(non-volatile memory),例如快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);存储器还可以包括上述种类的存储器的组合。
实施例一,在装置7为房间管理服务器时,处理器701调用存储器702中的程序代码用于执行以下步骤:
接收上课请求消息;其中,所述上课请求消息携带房间号;
确定所述房间号对应的虚拟教室内的终端设备;其中,所述终端设备包括学生终端和老师终端;
在推流集群中为所述终端设备分配一个目标推流服务器;
指示所述目标推流服务器为所述虚拟教室内的终端设备推送媒体流。
在一个或多个实施例中,处理器701所述在推流集群中为所述终端设备分配一个目标推流服务器,包括:
获取推流集群中各个推流服务器的负荷状态参数的参数值;
根据各个推流服务器的负荷状态参数的参数值在所述推流集群中选择一个目标推流服务器。
在一个或多个实施例中,处理器701所述获取推流集群中各个推流服务器的负荷状态参数的参数值,包括;
向共享服务器发送负荷状态查询请求;
接收所述共享服务器响应于所述负荷状态查询请求返回的负荷状态查询响应;其中,所述负荷状态查询响应携带各个推流服务器的负荷状态参数的参数值;
解析所述负荷状态查询响应得到各个推流服务器的负荷状态参数的参数值。
在一个或多个实施例中,处理器701所述根据各个推流服务器的负荷状态参数的参数值从所述推流集群中选择一个目标推流服务器,包括:
根据所述负荷状态参数的参数值从所述推流集群中选择N个负荷最轻的推流服务器;其中,N为大于1的整数;
从所述N个负荷最轻的推流服务器中随机选择一个推流服务器作为目标推流服务器;或
根据所述负荷状态参数从所述推流集群中选择负荷最轻的推流服务器作为目标推流服务器。
在一个或多个实施例中,处理器701所述指示所述目标推流服务器向所述房间号对应的虚拟教室推送媒体流,包括:
向所述目标推流服务器发送推流任务指示;其中,所述推流任务指示携带房间号,所述推流任务指示用于指示所述目标推流服务器将来自学生终端的学生媒体流推送给老师终端,以及将来自老师终端的媒体流推送给学生终端。
在一个或多个实施例中,所述终端设备还包括监课终端。
实施例二,在装置7为推流服务器时,处理器701调用存储器702中的程序代码用于执行以下步骤:
响应于房间管理服务器的推流任务指示,确定虚拟教室内的学生终端和老师终端;其中,所述推流任务指示携带所述虚拟教室的房间号;
将来自所述学生终端的学生媒体流推送给所述老师终端;
以及将来自所述老师终端的老师媒体流推送给所述学生终端。
在一个或多个实施例中,处理器701还用于执行:
在所述虚拟教室中存在监课终端时,将所述学生媒体流和老师媒体流进行融合后生成融合媒体流;
将所述融合媒体流推送给所述监课终端
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例提供的推流服务器的分配方法或媒体流的推送方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
Claims (12)
1.一种推流服务器的分配方法,其特征在于,所述方法包括:
接收上课请求消息;其中,所述上课请求消息携带房间号;
确定所述房间号对应的虚拟教室内的终端设备;其中,所述终端设备包括学生终端和老师终端;
在推流集群中为所述终端设备分配一个目标推流服务器;
指示所述目标推流服务器为所述虚拟教室内的终端设备推送媒体流。
2.根据权利要求1所述的方法,其特征在于,所述在推流集群中为所述终端设备分配一个目标推流服务器,包括:
获取推流集群中各个推流服务器的负荷状态参数的参数值;
根据各个推流服务器的负荷状态参数的参数值在所述推流集群中选择一个目标推流服务器。
3.根据权利要求2所述的方法,其特征在于,所述获取推流集群中各个推流服务器的负荷状态参数的参数值,包括;
向共享服务器发送负荷状态查询请求;
接收所述共享服务器响应于所述负荷状态查询请求返回的负荷状态查询响应;其中,所述负荷状态查询响应携带各个推流服务器的负荷状态参数的参数值;
解析所述负荷状态查询响应得到各个推流服务器的负荷状态参数的参数值。
4.根据权利要求1所述的方法,其特征在于,所述根据各个推流服务器的负荷状态参数的参数值从所述推流集群中选择一个目标推流服务器,包括:
根据所述负荷状态参数的参数值从所述推流集群中选择N个负荷最轻的推流服务器;其中,N为大于1的整数;
从所述N个负荷最轻的推流服务器中随机选择一个推流服务器作为目标推流服务器;或
根据所述负荷状态参数从所述推流集群中选择负荷最轻的推流服务器作为目标推流服务器。
5.根据权利要求1所述的方法,其特征在于,所述指示所述目标推流服务器向所述房间号对应的虚拟教室推送媒体流,包括:
向所述目标推流服务器发送推流任务指示;其中,所述推流任务指示携带房间号,所述推流任务指示用于指示所述目标推流服务器将来自学生终端的学生媒体流推送给老师终端,以及将来自老师终端的媒体流推送给学生终端。
6.根据权利要求1所述的方法,其特征在于,所述终端设备还包括监课终端。
7.一种媒体流的推送方法,其特征在于,包括:
响应于房间管理服务器的推流任务指示,确定虚拟教室内的学生终端和老师终端;其中,所述推流任务指示携带所述虚拟教室的房间号;
将来自所述学生终端的学生媒体流推送给所述老师终端;
以及将来自所述老师终端的老师媒体流推送给所述学生终端。
8.根据权利要求7所述的推送方法,其特征在于,还包括:
在所述虚拟教室中存在监课终端时,将所述学生媒体流和老师媒体流进行融合后生成融合媒体流;
将所述融合媒体流推送给所述监课终端。
9.一种推流服务器的分配装置,其特征在于,包括:
收发单元,用于接收上课请求消息;其中,所述上课请求消息携带房间号;
确定单元,用于确定房间号对应的虚拟教室内的终端设备;其中,所述终端设备包括学生终端和老师终端;
分配单元,用于在推流集群中为所述终端设备分配一个目标推流服务器;
指示单元,用于指示所述目标推流服务器为所述虚拟教室内的终端设备推送媒体流。
10.一种媒体流的推送装置,其特征在于,包括:
确定单元,用于响应于房间管理服务器的推流任务指示,确定虚拟教室内的学生终端和老师终端;其中,所述推流任务指示携带所述虚拟教室的房间号;
推送单元,用于将来自所述学生终端的学生媒体流推送给所述老师终端;
以及将来自所述老师终端的老师媒体流推送给所述学生终端。
11.一种计算机存储介质,其特征在于,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行如权利要求1~8任意一项的方法步骤。
12.一种电子设备,其特征在于,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行如权利要求1~8任意一项的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011620635.3A CN112714186A (zh) | 2020-12-30 | 2020-12-30 | 推流服务器的分配方法、媒体流的推送方法、装置、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011620635.3A CN112714186A (zh) | 2020-12-30 | 2020-12-30 | 推流服务器的分配方法、媒体流的推送方法、装置、存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112714186A true CN112714186A (zh) | 2021-04-27 |
Family
ID=75547545
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011620635.3A Pending CN112714186A (zh) | 2020-12-30 | 2020-12-30 | 推流服务器的分配方法、媒体流的推送方法、装置、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112714186A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113691526A (zh) * | 2021-08-23 | 2021-11-23 | 深圳市商汤科技有限公司 | 基于WebRTC的推流方法、装置、系统、设备和介质 |
CN114900710A (zh) * | 2022-05-10 | 2022-08-12 | 北京奇艺世纪科技有限公司 | 多设备同步方法、装置、电子设备及存储介质 |
CN115412737A (zh) * | 2022-08-30 | 2022-11-29 | 上海哔哩哔哩科技有限公司 | 直播回源中继节点确定方法及装置 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1921479A (zh) * | 2005-08-23 | 2007-02-28 | 中兴通讯股份有限公司 | 一种流媒体系统负荷分担方法及其系统 |
CN104917781A (zh) * | 2014-03-10 | 2015-09-16 | 中国移动通信集团河北有限公司 | 一种云教室的实现系统、方法及服务器 |
CN105916039A (zh) * | 2016-05-06 | 2016-08-31 | 亿瑞互动科技(北京)有限公司 | 一种在线教学方法、装置及相关设备 |
CN106713819A (zh) * | 2015-07-24 | 2017-05-24 | 三亚中兴软件有限责任公司 | 用于视频会议的数据传输方法、装置及系统 |
CN109547811A (zh) * | 2019-01-15 | 2019-03-29 | 深圳市云歌人工智能技术有限公司 | 展示交互内容的方法、装置以及存储介质 |
CN109698805A (zh) * | 2017-10-20 | 2019-04-30 | 深圳市鹰硕技术有限公司 | 一种远程教学培训系统及访问控制方法 |
CN110491212A (zh) * | 2019-09-16 | 2019-11-22 | 世纪海航(厦门)科技有限公司 | 一种在线课堂教学方法、装置、调度服务器及系统 |
CN110673777A (zh) * | 2019-08-28 | 2020-01-10 | 北京大米科技有限公司 | 在线教学方法、装置、存储介质及终端设备 |
CN111444018A (zh) * | 2020-03-30 | 2020-07-24 | 北京字节跳动网络技术有限公司 | 请求处理方法以及装置 |
CN111897976A (zh) * | 2020-08-18 | 2020-11-06 | 北京字节跳动网络技术有限公司 | 一种虚拟形象合成方法、装置、电子设备及存储介质 |
-
2020
- 2020-12-30 CN CN202011620635.3A patent/CN112714186A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1921479A (zh) * | 2005-08-23 | 2007-02-28 | 中兴通讯股份有限公司 | 一种流媒体系统负荷分担方法及其系统 |
CN104917781A (zh) * | 2014-03-10 | 2015-09-16 | 中国移动通信集团河北有限公司 | 一种云教室的实现系统、方法及服务器 |
CN106713819A (zh) * | 2015-07-24 | 2017-05-24 | 三亚中兴软件有限责任公司 | 用于视频会议的数据传输方法、装置及系统 |
CN105916039A (zh) * | 2016-05-06 | 2016-08-31 | 亿瑞互动科技(北京)有限公司 | 一种在线教学方法、装置及相关设备 |
CN109698805A (zh) * | 2017-10-20 | 2019-04-30 | 深圳市鹰硕技术有限公司 | 一种远程教学培训系统及访问控制方法 |
CN109547811A (zh) * | 2019-01-15 | 2019-03-29 | 深圳市云歌人工智能技术有限公司 | 展示交互内容的方法、装置以及存储介质 |
CN110673777A (zh) * | 2019-08-28 | 2020-01-10 | 北京大米科技有限公司 | 在线教学方法、装置、存储介质及终端设备 |
CN110491212A (zh) * | 2019-09-16 | 2019-11-22 | 世纪海航(厦门)科技有限公司 | 一种在线课堂教学方法、装置、调度服务器及系统 |
CN111444018A (zh) * | 2020-03-30 | 2020-07-24 | 北京字节跳动网络技术有限公司 | 请求处理方法以及装置 |
CN111897976A (zh) * | 2020-08-18 | 2020-11-06 | 北京字节跳动网络技术有限公司 | 一种虚拟形象合成方法、装置、电子设备及存储介质 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113691526A (zh) * | 2021-08-23 | 2021-11-23 | 深圳市商汤科技有限公司 | 基于WebRTC的推流方法、装置、系统、设备和介质 |
CN114900710A (zh) * | 2022-05-10 | 2022-08-12 | 北京奇艺世纪科技有限公司 | 多设备同步方法、装置、电子设备及存储介质 |
CN114900710B (zh) * | 2022-05-10 | 2023-07-25 | 北京奇艺世纪科技有限公司 | 多设备同步方法、装置、电子设备及存储介质 |
CN115412737A (zh) * | 2022-08-30 | 2022-11-29 | 上海哔哩哔哩科技有限公司 | 直播回源中继节点确定方法及装置 |
CN115412737B (zh) * | 2022-08-30 | 2024-03-08 | 上海哔哩哔哩科技有限公司 | 直播回源中继节点确定方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112714186A (zh) | 推流服务器的分配方法、媒体流的推送方法、装置、存储介质及电子设备 | |
WO2021082583A1 (zh) | 直播间红包处理方法、装置、介质及电子设备 | |
CN115408604A (zh) | 用于递送实时消息的消息传递平台 | |
CN110266509A (zh) | 多媒体会议端点传送系统 | |
CN110851278A (zh) | 一种基于微服务架构的配网自动化主站移动应用服务管理方法和系统 | |
CN103763343A (zh) | 一种业务访问处理方法及装置 | |
CN108810052A (zh) | 直播服务器的选择方法及装置 | |
JP6335978B2 (ja) | 通信セッション上の一部の参加者のための仮想の通信セッションを提供するシステムおよび方法 | |
CN112769919B (zh) | 推流任务的分发方法、装置、存储介质及电子设备 | |
CN112632342A (zh) | 数据查询方法、装置、存储介质及电子设备 | |
CN116471277A (zh) | 算力分配方法、装置、服务器和计算机可读存储介质 | |
CN115617509A (zh) | 一种分布式集群的节点部署方法、装置和电子设备 | |
US8161113B2 (en) | Rich signaling feedback mechanism for group communication | |
CN112822243A (zh) | 推流服务器的选择方法、装置、存储介质及电子设备 | |
Wang et al. | Exploring the design space of multichannel peer-to-peer live video streaming systems | |
CN108650520A (zh) | 一种视频直播控制方法、相关设备及计算机存储介质 | |
WO2022242470A1 (zh) | Cdn的调度方法、装置、设备及存储介质 | |
CN111162992B (zh) | 互动模式切换方法、装置、设备和存储介质 | |
CN105187518B (zh) | 一种cdn内容分发方法及系统 | |
JP2023031248A (ja) | エッジコンピューティングネットワーク、データ伝送方法、装置、機器、及び記憶媒体 | |
Dingler et al. | AudioFeeds: a mobile auditory application for monitoring online activities | |
CN105681262A (zh) | 一种交互消息分配方法及系统 | |
CN109450686B (zh) | 一种基于普适网络的网络资源管理系统及方法 | |
CN111130983B (zh) | 信息发送、生成结果信息的方法和设备 | |
CN106559306A (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 |