加入收藏 | 设为首页 | 会员中心 | 我要投稿 河北网 (https://www.hebeiwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 云计算 > 正文

弹性支撑百万级别直播流的乐视云“月光宝盒”是怎样炼成的(内附技醒目货)

发布时间:2018-03-29 08:06:50 所属栏目:云计算 来源:站长网
导读:项目配景 在寓目视频直播中,不免会产生由于各类打断而错过一些出色半晌的环境,这个时辰,假如我们能快速穿越归去,会是奈何一种体验?乐视云月光宝盒可以美满补充遗憾,让出色不再错过。 项目挑衅 月光宝盒是乐视云直播 PaaS 平台的一个重要处事,可以完
副问题[/!--empirenews.page--]

项目配景

在寓目视频直播中,不免会产生由于各类打断而错过一些出色半晌的环境,这个时辰,假如我们能快速穿越归去,会是奈何一种体验?乐视云“月光宝盒”可以美满补充遗憾,让出色不再错过。

弹性支撑百万级别直播流的乐视云“月光宝盒”归怎样炼成的(内附技醒目货) 1

项目挑衅

“月光宝盒”是乐视云直播 PaaS  平台的一个重要处事,可以美满办理直播进程中恣意时刻段的时移回看,也可以在直播竣事后,提供瞬时秒回成果,快速将直播信号转为点播信号举办分发,大幅晋升了直播寓目体验,也同时给直播运营提供了更多的也许。月光宝盒历经三次产研迭代,见证了直播流由万增至百万的快速增添,一起上我们碰着了哪些挑衅?直播流的分派计策是怎样进化的?源站的切片、索引存储必要做出哪些进级?以及在一连迭代进程中怎样确保滑腻进级等等题目, 接下来我们将从“月光宝盒”三次大的版本迭代中做出解答。

月光宝盒 V1.0

直播 PaaS 平台由原支撑乐视团体营业的直播靠山技能部蜕变而成,已经一连处事于乐视网、乐视电视、机顶盒、乐视体育、乐视音乐等高出 5 年时刻, 早期的直播流量在万级别(注:直播流 ID 个数,可以领略为一个直播流就是一起信号),直播信号凡是以 7*24 小时长直播为主,宣布会、演唱会等短直播为辅(注:这类短直播无直播内容时,凡是会设置一个指定的备片来一连取代直播信号源,以晋升断流时用户播放体验),因此在 V1.0 架构中,这阶段的直播出产调治分派算法回收简朴的设置计策,将直播流与装备组举办关联绑定,直播流对应的切片与索引回收简朴的当地存储。直播、时移回看、解决录制均在该组装备中并行提供处事。

弹性支撑百万级别直播流的乐视云“月光宝盒”归怎样炼成的(内附技醒目货) 2

V1.0 架构图

注:

绿色暗示直播流恒久处于行使状态。

紫色暗示直播信号暂且刻断,但源站设置了播放备片成果,会播放备片信号,进步直播断流体验。

弹性支撑百万级别直播流的乐视云“月光宝盒”归怎样炼成的(内附技醒目货) 3

附:左图为正常直播信号,右图为直播信号间断时播放的备片。

跟着直播 PaaS 平台的开放,海量直播流的接入,而贸易直播的需求首要以秀场、宣布会等隔断较短的直播为主,此时假如仍凭证原有平衡分派直播流计策,每个直播都分派单独处事器,会导致处事器数目成倍增进,资源本钱陡增,为办理这个题目,月光宝盒架构也进级至 V1.1。

月光宝盒 V1.1

在 V1.1 版本中,直播流均按需出产,为了确保客户所接入的流量安详,调治会同时分派给主备两台装备来出产该流,在主节点妨碍时自动执行主备切换,确保对用户播放无感知。

跟着营业的快速增添,日活直播快速上升,平台对直播源站集群举办了扩容,但因为直播流分派计策会优先与时移数据绑定(注:该计策为确保全程回看数据在同台装备持续),因此在现实运行的进程中也许会呈现较量严峻的偏压题目,会导致较量明明的热门题目,必要通过集群上报流监控状态判定是否必要对备流举办迁徙,以实现集群的再平衡。

弹性支撑百万级别直播流的乐视云“月光宝盒”归怎样炼成的(内附技醒目货) 4

v1.1 架构图

注:

虚线箭头暗示产生偏压时,部门直播流产生迁徙。

绿色暗示正在播放的直播流。

赤色暗示直播流即将被迁徙。

黄色暗示直播流被迁徙后。

通过流迁徙的方法我们缓解了热门题目,但这种方法有必然的滞后性,我们必要新的架构来办理这个题目,在先容新架构方案前,起首快速先容下直播营业内里用到一些协媾和文件,HLS(Http Live Streaming)是由 Apple 公司界说的用于及时传播输的协议,HLS 基于 HTTP 协议实现,传输内容包罗两部门,一是 M3U8 描写文件,二是 TS 媒体文件。M3U8 文件是用文本方法对媒体文件举办描写,由一系列标签构成。

跟着营业一连增添,整个直播集群的存储压力会变得较量突出,因此必要尽快消除 IO 瓶颈。在此配景下,我们起首将 TS 切片迁徙到了 LeS3(乐视云工具存储体系), 但对付视频索引的存储如故凭证主备方法打点,以是下一步重点就酿成了探求存储 M3U8 的索引集群存储办理方案,因为差异直播流对切片配置巨细纷歧(凡是配置在 2~10s),譬如北京个中一个集群最大峰值写入约在 3w 阁下,营业属于写多读少,对付传统主从 RDS 来说,单机无法遭受,必要做分库分表,而分库分表有许多破绽,好比对营业侵入太多、应用不友爱,广泛的回收 Proxy 方案不单对技能有要求,并且尚有很是多的范围性,视频直播必要机动的扩展性,而分库分表对再扩容的本钱很是高,会为营业埋下隐患。这时代我们打仗到了 TiDB,其支持多活、无单点、支持横向扩容特征且兼容 MySQL 等特征与我们的营业需求很是相符,加之 TiDB 安装陈设、监控等细节做得很是到位,我们抉择测试看看结果。

月光宝盒 V1.2

颠末一周阁下对TiDB的常用场景测试、压测,测试功效较量切合预期,从存储容量、QPS、相应时刻来看,均可支持我们“快速穿越执行时移回看”的需求。测试时代也跟官方的同窗举办技能交换,确定了后续出产情形中如:陈设架构、装备选型、表布局及索引优化。在出产情形的 TiDB 出产集群上线后,我们将线上原有直播流的 HLS 回看的索引在原 V1.1 架构举办当地存储外,同步复制至 TiDB 中,以便于真实出产情形中来验证TiDB的不变性。调查一月多,运行安稳,时代我们做部门妨碍演练,如将PD、TiKV、TiDB中某一台重启,并未呈现处事不行用或丢数据的环境!接下来对北京一个直播集群月光宝盒处事举办了试点改革,回收灰度切流方法慢慢将直播流的时移、回看、秒回哀求切至TiDB ,运行不变。今朝世界各地直播集群的月光宝盒处事跑在TiDB处事之上。

弹性支撑百万级别直播流的乐视云“月光宝盒”归怎样炼成的(内附技醒目货) 5

v1.2 架构图

弹性支撑百万级别直播流的乐视云“月光宝盒”归怎样炼成的(内附技醒目货) 6

附一张 TiDB 在月光宝盒 V1.2 中的架构图

总结回首

(编辑:河北网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读