概述
目前市场上的产品主要分为两种:一种是像花椒、映客、斗鱼、YY等的泛娱乐化直播,一种是思科、声网之类的实时互动直播。一般情况下实时互动直播会与PSTN网络相连,所以实时互动直播必须达到电话级别的传输要求,一般不超过400ms。
泛娱乐化直播架构
在泛娱乐化直播架构中有信令服务器集群来负责创建房间、聊天、赠送礼物…,当直播端需要直播时直接向信令服务器发送请求,信令服务器向请求端返回推流的地址,然后直播端开始像CDN网络推送数据流(流媒体CDN与传统CDN有些不同),然后当观众需要观看直播时,使用同样的方式请求直播地址,然后在流媒体CDN拉取数据流,具体如图所示:
实时互动直播架构
众所周知,实时互动直播架构对传输效率要求高,因此客户端使用UDP协议向媒体服务器推流,由于要保证服务器7x24小时的服务,所以通过私有网络建立了服务器集群,直播端向媒体服务器推流。由于使用了多个直播服务节点,所以需要控制中心来控制这些节点以达到负载均衡、健康评估等的目的。每个节点通过内总线向控制中心发送心跳包,控制中心通过心跳包来分析服务节点的健康状况来做出相应的决策。使用内总线的原因一是为了数据的安全性,二是为了数据的时效性。那么有时候实时互动也需要多人观看,所以上面讲解的泛娱乐化直播架构与实时互动直播架构进行融合。在CDN流媒体网络与内总线之间有一层服务节点最重要的作用是将直播端的RTP转换为RTMP数据向CDN推流,由此得知内总线的主要作用就是