直播授课系统架构如图1-1所示,包括应用集群、数据库服务器集群、管理服务器集群、直播服务端、直播接收端(观众)以及CDN六个模块。下面对这六个模块分别进行介绍:
应用集群:此集群的主要功能是对直播视频流进行动态管理,包括压缩、解压缩、编码、解码、美颜、美声、场景动画处理等,同时将这些信息动态地推送到直播接收端。
数据库服务器集群:此集群的主要功能是对直播系统中的基础数据进行管理和维护,包括用户数据、消息数据、在线状态和集群状态以及日志等。
图1-1 直播授课系统架构图
管理服务器集群:此集群是系统的控制中心,当在线用户及资源数量越来越大时,需要对系统的资源进行动态管理。所有节点都通过控制中心来管理,控制中心与节点间保持通信,每个节点都定期向控制中心报告其状况(比如CPU、内存占用情况,网络占用情况等),控制中心会根据节点的状况数据进行决策。当发现某个节点CPU过高或者某个指标不达标时,控制中心会将其业务转到其他节点或者在有新的业务时分配给其他负载更低的节点去执行,以保证每个节点负载均衡。实际上节点和控制中心之间还有个内总线,内总线的作用是保证数据的安全。(www.xing528.com)
直播服务端:服务端是指提供直播视频服务者所在的客户端。服务者通过直播服务端可以将自己的视频与语音直播出来,方便直播接收端消费该服务。直播服务端通常要求在一个安静的环境下有一台配置较高的电脑、一个麦克风以及其他相关设备。
直播接收端:接收端使视频服务的消费者通过一个专用的软件可以接收直播者的视频,并能够与其进行音频和文字的互动。
CDN:CDN的全称是Content Delivery Network,即内容分发网络。CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。CDN的关键技术是内容存储和分发技术。
CDN的基本原理是广泛采用各种缓存服务器,将这些缓存服务器分布到用户访问相对集中的地区或网络中,在用户访问网站时,利用全局负载技术将用户的访问指向距离最近的工作正常的缓存服务器上,由缓存服务器直接响应用户请求。
CDN的基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输得更快、更稳定。通过在现有的互联网基础之上,在网络各处放置节点服务器构成一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决Internet(因特网)网络拥挤的状况,提高用户访问网站的响应速度。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。