欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

解析七牛直播云的技术架构与核心观念

程序员文章站 2022-04-23 20:54:27
如今以Twitch为代表的在线直播在互联网业界大行其道,服务器提供商七牛也适时地推出了针对直播的LiveNet服务,本文就来为大家解析七牛直播云的技术架构与核心观念... 16-07-13...

互联网技术的发展催生了大量新行业,初创企业大军与日俱增。近两年,直播行业更是一支突起的异军, 我们看到如斗鱼直播、熊猫tv、 imbatv这样的网络平台出现了在互联网上,并迅速火势;同时, 我们也看到像爱奇艺、优酷这样主流的视频网站也加入了直播的栏目。
然而,直播视频的流行,使的企业对互联网提出了更高的要求,为了满足企业的需求,七牛推出了其创新的直播云。我们有幸采访到七牛直播云产品负责人徐立,让我们可以更深入的了解这一直播云的特色所在。
网络革新:livenet实时流网络 徐立 介绍说,”livenet 是实时流网络,是新型的网络结构,是去中心化的网络结构,是体验的结构。通过简化了节点的组成方式,使得网络节点可以无限扩充,从而更好地满足全球化的需求,也带来了管理上新的体验。”那么,这种实时流网络与传统的网络相比有什么不同? livenet vs. 传统网络

livenet vs. 传统网络
解析七牛直播云的技术架构与核心观念

从上图中我们可以看到,左边是传统的分布式多中心、多节点的网络构成方式。这种架构方式按照空间地域属性划分,存在许多问题:一、结构非常复杂的,存在互联互通问题,用弹性不足,不能灵活扩展;二,主干道网络线路发生波动,将会影响片的体验;三、线路有限。 右边是livenet网络,它是一个多中心的、平面结构。这种结构带了一些优势,一、节点是可以自主支持的,可以通过软件定义网络方式来缓解人为配置的静态路由,避免人为带来的问题;二、它与地理区域相关性不大,只要有足够的节点,通过节点跟节点进行感知,使用软件配置路由就可快速实现部署,即使用户希望在覆盖到北美、欧洲、东南亚,也只要一个工作日就可以完成全部节点的部署。三、智能选线,相比树状网络固定有限的线路集合,livenet 的网状网络内部的线路是动态且灵活组合的,基于这些动态的线路组合和实时数据,可以决策调度最优线路。四、故障容错,在livenet 平面网状结构中可以区分两种角色,一种是维持状态的调度器,这些调度器可以进行互配;另一种是大部分节点是无状态的流服务器,当状态流服务器宕机,它是可以平滑退出,再通过状态转移通过感知进行重分配,从而不会服务可控性——这是livenet 与传统网络最本质的区别,徐立说。 

livenet智能调度
七牛开发人员通过自己写的一套软件层面的业务逻辑,给livenet 网络提供了智能调度的方法。这一功能主要通过了解路由的行为,来了解 a到b 点或者a到 c点,哪一条链路更合适、延迟更低,网络链质量更好,根据这些实时数据反馈,然后再加上程序算法,七牛实现了网络的智能调试,也就是常说的软件定义网络。另外,七牛还提供流式传输sdk,即开发包——这个开发包分为采集分流端,也分为播放端,它是一个很轻量级的,针对流式传输的一个内核,搭配这些终端数据,可以让整个实时流网络进行感知,以达到更优的线路。 livenet 网络的自我感知、自我调整功能,减少了人工干预的时间,也降低的人工导致的问题。

七牛livenet核心价值是什么? 
“七牛云实时流网络—livenet 是一个面向实时互动场景的流式传输网络,是 live 时代的一个新引擎。在内容消费升级,用户体验升级,越来越强调实时互动的 live 时代,它的出现能够帮助创业者们顺应时代潮流,缩短想法到产品的距离,为最终用户提供更友好,更极致的体验。”徐立解释说。 丰富的场景和功能实时流网络是底层基础通道的支撑,是实时互动的场景的流式传输网络,通过这个通道层可以实现上层场景化的功能技术。
七牛直播云给用户提供了大量的功能,如数据存储,云端录制存储功能,还有回看,内容增发的网络,等等功能。 七牛直播云给用户提供了常见的场景与功能。例如在活动直播中,对应了云端直播的功能,可在云端录制、延时直播,可以把一段内容推迟播放;例如移动直播中,比较热门的功能就是连麦互动,内容在持续升级,交互体验也在升持续级,连麦互动可以进化到观众和主播之间,每个人都可以申请一个连麦端加入进来直播中。还有其中游戏、教学、电台、vr和pc等场景,都提供相应的特殊功能。
解析七牛直播云的技术架构与核心观念

但是,除了这些,如果有更多的未知的场景应该怎么办?整体七牛直播云无论在数据采集源还是架构设计上是开放式的,每个环节都是可自定义的,方便开发者可以*的扩展功能,最后再结合质量大数据平台则可以更好的保障各类直播场景的流畅性。举个例子:无人机的场景。传统无人机是无法做网络直播的,因为采用的是无线传输。无人机把采集到的画面,通过无线方式传到设备上,在app上实现画面的转码或播放,这样只能在一个设备上看,也就是数据无法分享。想要实现无人机直播,一种做法是把采集的开放数据源sdk放入无人机芯片,但是会增加硬件生产成本。第二种就是无人机app嵌入七牛直播云的sdk,然后再把画面音频通过开放sdk进行编码,通过实时流网络传输出去,这样也可以实现无人机直播。

这就是七牛直播云的全貌概览,革新的网络架构加上丰富的场景与功能,可以上直播更上一层楼。