网易视频云:面向海量用户的分布式视频处理技术

合集下载

网易视频云:个性化搜索技术与应用

网易视频云:个性化搜索技术与应用

网易视频云是网易倾力打造的一款基于云计算的分布式多媒体处理集群和专业音视频技术,为客户提供稳定流畅、低时延、高并发的视频直播、录制、存储、转码及点播等音视频的PASS服务。

在线教育、远程医疗、娱乐秀场、在线金融等各行业及企业用户只需经过简单的开发即可打造在线音视频平台。

现在,网易视频云与大家分享一下个性化搜索技术与应用。

一什么是个性化搜索个性化搜索简单点说,就是在搜索过程中融入个性化元素,具体过程是指在搜索引擎中,根据用户个性化特征,进行二次排序或融合相关物品的搜索过程;目的是抓住用户口味偏好,缩短用户筛选时间和消费路径。

一方面从用户角度来讲,每个人的喜好不一样,需要分析用户偏好。

比如价格偏好、类目偏好、品质偏好等等;另一方面,从搜索的角度来讲,搜索系统有两件事情可以做:首先挖掘用户的个性化需求,明确消费指向;其次是对商品的特征抽取。

这两件事情做好后,当客户搜索时,系统需要把符合他消费习惯的产品尽量往前排。

二个性化搜索在淘宝中应用淘宝上用户的注册信息,浏览行为,购买行为非常丰富,搜索的结果中加入了个性化的因素,不同的买家,由于以前的购买或者浏览行为不一样,看到的搜索结果也可能不一样。

个性化模型根据用户的个性化偏好、物品特征以及卖家特征,做出二次排序模型,然后再展示给用户;搜索结果和营销资源等方面的充分应用,目标是让消费者看到和他最相关的商品展现,最终实现千人千面的淘宝。

比如下图中,搜索购买T恤时,对于中档购买力的用户,左图高中低价格都有,用户需要仔细再筛选辨认下,而右图主要是中等价位,而且拍在前面,用户很容易选择,这就是在价位上的个性化排序搜索。

三构建个性化搜索系统想要顺利地构建个性化搜索系统,需要先明晰系统的核心关键点,然后据此逐步进行用户和物品特征建模、建立个性化化模型、线上二次排序,最后把最终结果展示给用户。

1 个性化搜索系统的关键点(1)用户个性化特征:一方面是,用户的客观特征,比如性格,年龄;另一方面是,根据用户历史行为,比如浏览、购买等,抽象出来的用户偏好特征,比如风格偏好,价格偏好,品牌偏好。

网易视频云:Kudu,支持快速分析的新型Hadoop存储系统

网易视频云:Kudu,支持快速分析的新型Hadoop存储系统

网易视频云:Kudu,支持快速分析的新型Hadoop存储系统网易视频云是网易倾力打造的一款基于云计算的分布式多媒体处理集群和专业音视频技术,为客户提供稳定流畅、低时延、高并发的视频直播、录制、存储、转码及点播等音视频的PaaS服务。

在线教育、远程医疗、娱乐秀场、在线金融等各行业及企业用户只需经过简单的开发即可打造在在线音视频平台。

Kudu是Cloudera开源的新型列式存储系统,是Apache Hadoop生态圈的新成员之一(incubating),专门为了对快速变化的数据进行快速的分析,填补了以往Hadoop存储层的空缺。

本文主要对Kudu的动机、背景,以及架构进行简单介绍。

背景——功能上的空白Hadoop生态系统有很多组件,每一个组件有不同的功能。

在现实场景中,用户往往需要同时部署很多Hadoop工具来解决同一个问题,这种架构称为混合架构(hybrid architecture)。

比如,用户需要利用Hbase的快速插入、快读random access的特性来导入数据,HBase也允许用户对数据进行修改,HBase对于大量小规模查询也非常迅速。

同时,用户使用HDFS/Parquet + Impala/Hive来对超大的数据集进行查询分析,对于这类场景,Parquet这种列式存储文件格式具有极大的优势。

很多公司都成功地部署了HDFS/Parquet + HBase混合架构,然而这种架构较为复杂,而且在维护上也十分困难。

首先,用户用Flume或Kafka等数据Ingest工具将数据导入HBase,用户可能在HBase上对数据做一些修改。

然后每隔一段时间(每天或每周)将数据从Hbase中导入到Parquet文件,作为一个新的partition放在HDFS上,最后使用Impala等计算引擎进行查询,生成最终报表。

这样一条工具链繁琐而复杂,而且还存在很多问题,比如:∙ 如何处理某一过程出现失败?∙ 从HBase将数据导出到文件,多久的频率比较合适?∙ 当生成最终报表时,最近的数据并无法体现在最终查询结果上。

网易视频云:游戏开发性能优化经验总结

网易视频云:游戏开发性能优化经验总结

网易视频云:游戏开发性能优化经验总结网易视频云是网易倾力打造的一款基于云计算的分布式多媒体处理集群和专业音视频技术,为客户提供稳定流畅、低时延、高并发的视频直播、录制、存储、转码及点播等音视频的PaaS服务。

在线教育、远程医疗、娱乐秀场、在线金融等各行业及企业用户只需经过简单的开发即可打造在在线音视频平台。

接下来为大家介绍游戏开发性能优化经验总结。

优化概论说起游戏的优化,在游戏开发中经常分为这几步:1.首先要确定游戏中经常会出现哪些问题– Profile2.然后确定在哪些方向进行性能优化– Analyze3.最后再尽可能将问题逐个解决– Solve接着,我们再来说说游戏优化中主要的四个考虑方向:CPU引发的问题:·由于短时间内的计算量太大,导致画面流畅性降低,俗称跳帧·发热严重,耗电量高常见的优化手段:·将计算分到多个逻辑帧中进行计算,避免短时间内的性能超过负荷,俗称“分帧”(time-slice)。

·将可以缓存的数据尽可能的缓存起来,避免重复计算和重复分配内存,常见的示例为“内存池”。

·使用合理的算法和数据结构,比如:冒泡排序和直接插入排序在整体数组比较有序的情况下效率大大好于快速排序。

把快排替换成是优化程序排序效率的一个常见的思路。

GPU引发的问题:·发热严重,耗电量高·FPS降低常见的优化手段:·优化美术资源,比如合理规划图集,约定好模型的最大三角形面数,制定合理的粒子效果规范。

这个可以说是游戏优化中最重要的一个,因此,技术美术在游戏开发中作用巨大。

·简化或者优化着色器(shader),如在游戏开始前就对Shader进行编译和加载。

·使用Batching,尽量减少DrawCall·使用平台推荐的压缩格式,比如安卓平台的ETC1和IOS平台的PVRTCIO和网络引发的问题:·网络延迟甚至掉线·加载资源导致的跳帧·加载时间过长常见的优化手段:·使用独立的线程进行加载,有些引擎如Unity中还能利用协程·减少网络包里面的冗余数据·合并小包,减少请求数据的次数·分帧对回包进行处理·限制一定时间内的发包频率内存引发的问题:·闪退和卡死,比如安卓的Low Memory Killer会在低内存情况下杀掉内存占用过大的程序。

网易视频云分享:分布式存储必读论文

网易视频云分享:分布式存储必读论文

网易视频云是网易倾力打造的一款基于云计算的分布式多媒体处理集群和专业音视频技术,为客户提供稳定流畅、低时延、高并发的视频直播、录制、存储、转码及点播等音视频的PASS服务。

在线教育、远程医疗、娱乐秀场、在线金融等各行业及企业用户只需经过简单的开发即可打造在线音视频平台。

现在,网易视频云与大家分享一下分布式存储必读论文.分布式存储泛指存储存储和管理数据的系统,与无状态的应用服务器不同,如何处理各种故障以保证数据一致,数据不丢,数据持续可用,是分布式存储系统的核心问题,也是极具挑战的问题。

本文总结了分布式存储领域的经典论文,供大家参考。

The Google File System. Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Leung。

基于普通服务器构建超大规模文件系统的典型案例,主要面向大文件和批处理系统,设计简单而实用。

GFS 是google的重要基础设施,大数据的基石,也是Hadoop HDFS的参考对象。

主要技术特点包括:假设硬件故障是常态(容错能力强),64MB大块,单Master设计,Lease/链式复制,支持追加写不支持随机写。

Bigtable: A Distributed Storage System for Structured Data. Fay Chang, Jeffrey Dean, Sanjay Ghemawat, et. 支持PB数据量级的多维非关系型大表,在google内部应用广泛,大数据的奠基作品之一,Hbase就是参考BigTable设计。

Bigtable的主要技术特点包括:基于GFS实现数据高可靠,使用非原地更新技术(LSM树)实现数据修改,通过range分区并实现自动伸缩等。

Spanner: Google’s Globally-Distributed Database. James C. Corbett, Jeffrey Dean, et. 第一个用于线上产品的大规模、高可用,跨数据中心且支持事务的分布式数据库。

视频云 解决方案

视频云 解决方案

视频云解决方案1. 引言随着互联网技术的快速发展,视频已成为人们日常生活和工作中不可或缺的一部分。

从观看娱乐节目到在线学习,视频已经成为人们获取信息和娱乐的首选方式之一。

为了满足用户对高质量视频内容的需求,视频云解决方案应运而生。

本文将介绍视频云解决方案的概念、特点以及应用场景。

2. 视频云解决方案的概念视频云解决方案是指将视频存储、处理、分发和播放等功能集成在一起,通过云计算技术提供给用户的一种综合性解决方案。

视频云解决方案不仅能够提供高可靠性和高可扩展性的视频存储和传输服务,还能够提供强大的视频处理功能,包括视频编码、转码、剪辑和特效等。

通过视频云解决方案,用户可以轻松地将视频内容上传到云端,并通过云端进行各种处理和分发,最终实现高质量的视频播放体验。

3. 视频云解决方案的特点3.1 高可靠性视频云解决方案通常基于分布式存储和备份技术,能够保证视频数据的安全可靠存储。

通过多副本备份和故障自动切换等机制,视频云解决方案能够有效地应对硬件故障和网络故障,提供高可靠性的视频存储服务。

3.2 高可扩展性视频云解决方案通常基于云计算平台,采用分布式架构和自动扩容机制,能够根据用户的需求自动调整资源,并提供高可扩展性的视频处理和分发服务。

用户无需关注服务器硬件和网络带宽等问题,即可轻松应对用户量突增和视频流量剧增的情况。

3.3 强大的视频处理能力视频云解决方案集成了丰富的视频处理功能,包括视频编码、转码、剪辑和特效等,能够满足用户对视频处理的各种需求。

通过云端的大规模计算能力和分布式处理框架,视频云解决方案能够以较低的成本和较短的时间完成复杂的视频处理任务。

3.4 灵活的应用接口视频云解决方案通常提供开放的应用接口,方便用户进行二次开发和集成。

通过调用视频云解决方案的接口,用户可以快速构建自己的视频应用,并实现与其他应用的无缝连接。

4. 视频云解决方案的应用场景4.1 视频直播视频直播是视频云解决方案的重要应用场景之一。

视频云解决方案

视频云解决方案

视频云解决方案视频云解决方案是一种将视频内容存储、管理、传输和分发的全面解决方案。

它利用云计算的强大能力,为用户提供了高效、稳定、可靠的视频服务。

下面将从四个方面介绍视频云解决方案的特点和优势。

首先,视频云解决方案提供了高质量的视频服务。

它采用了先进的视频压缩和编码技术,能够将视频内容以较低的码率传输,从而保证用户在观看视频时不会出现卡顿和卡顿的问题。

同时,视频云解决方案还支持高清、超高清和全高清的视频播放,可以满足用户对高质量视频的需求。

其次,视频云解决方案具有高度的可扩展性。

它可以根据用户的需求,提供不同规模的视频存储和传输服务。

无论是小型企业还是大型企业,都可以根据自身的需求选择适合自己的视频云解决方案。

并且,视频云解决方案还支持多设备的接入,用户可以在不同的设备上观看视频内容,如电脑、手机和平板电脑等。

第三,视频云解决方案具有高安全性。

它采用了先进的数据加密和权限控制技术,可以确保用户的视频内容不被非法访问和篡改。

另外,视频云解决方案还支持用户自定义的权限设置,可以根据不同的角色和需求,将视频内容分配给不同的人员进行管理和访问。

大大提高了视频的安全性和隐私保护。

最后,视频云解决方案具有高可用性和容错性。

它采用了分布式的架构和多节点的配置,可以确保视频服务的高可用性和容错性。

即使某个节点出现故障,视频云解决方案仍然可以保证用户的视频内容正常传输和播放,不会影响用户的观看体验。

同时,视频云解决方案还具有自动备份和故障恢复的功能,能够快速恢复到正常工作状态。

总结来说,视频云解决方案是一种集视频存储、管理、传输和分发为一体的全面解决方案。

它具有高质量、高可扩展性、高安全性和高可用性的特点。

通过视频云解决方案,用户可以轻松地实现对视频内容的存储、管理和传输,提高了工作效率,降低了成本,提升了用户体验。

因此,视频云解决方案在各行各业都有广泛的应用前景。

网易视频云:网易平台级视频服务存储技术

网易视频云是网易倾力打造的一款基于云计算的分布式多媒体处理集群和专业音视频技术,为客户提供稳定流畅、低时延、高并发的视频直播、录制、存储、转码及点播等音视频的PaaS服务。

在线教育、远程医疗、娱乐秀场、在线金融等各行业及企业用户只需经过简单的开发即可打造在线音视频平台。

现在,网易视频云与大家分享一下网易平台级视频服务存储技术。

云计算近年以每年32%的增长率飞速发展,视频云领域也正以80%的流量逐年递增,腾讯、阿里、金山、,乐视,当然还有网易,各大厂商都加入了视频云的混战。

这些视频云厂商,不仅有基于IaaS、PaaS及SaaS层的服务以及对应层级的运维支撑,还覆盖了游戏、教育、媒体、医疗…..多个应用场景。

大家都说,视频服务存储技术是视频云服务关键。

而视频服务存储技术往往像个神秘大黑箱,网易视频云就为你打开视频服务存储的黑箱!伴随无线网络传输质量的提升和移动设备的智能化,2016年国内视频应用呈现爆发态势,以当下最火的直播APP为例,映客在APP Store下载量超越支付宝蹿升至第7位。

相比于互联网其他应用服务,视频应用对传输的实时性,播放的流畅性,存储的稳定性有更高的要求,对于传统的视频服务企业,要提供优质的视频服务,需要极高的技术门槛和资源成本。

云计算本身具有的高可靠性、资源共享性和可扩展性,促使了视频技术的云化,加速了视频应用的发展,两种技术相结合形成了当下流行的视频云技术。

对应于云计算的分层,视频云服务相应分为产品级服务、平台级服务和资源级服务。

产品级服务包括市场上形形色色的视频类APP,应用于在线教育、游戏直播、娱乐秀场等各种场景;平台级服务通常是指一站式的视频服务解决方案,为上层应用提供包括直播、点播、鉴权,内容审核和音视频转码在内的完整的SDK和API接口,具有接入方便,二次开发量小等特点;资源级服务位于云计算架构的最底层,能为包括视频服务在内的所有依托于云的应用提供底层软硬件资源的支持。

网易视频云:网盘背后的存储系统atlas

网易视频云是网易倾力打造的一款基于云计算的分布式多媒体处理集群和专业音视频技术,为客户提供稳定流畅、低时延、高并发的视频直播、录制、存储、转码及点播等音视频的PASS服务。

在线教育、远程医疗、娱乐秀场、在线金融等各行业及企业用户只需经过简单的开发即可打造在线音视频平台。

现在,网易视频云与大家分享一下百度网盘背后的存储系统atlas.百度网盘免费提供2TB存储,它的存储量一定是惊人的,支持它的存储系统atlas也是相当不错的。

atlas是一个KV存储,支持GET/PUT/DELETE三个接口,看起来接口简单,但要做好这么一个大规模系统非常不易,我们来看看atlas到底长啥样。

atlas基于如图所示arm存储机, 2U放6个机器,每个机器4核、4GB内存、4个3T硬盘,2U 总共72TB存储,相比普通机架服务器,存储密度提升1倍。

arm存储机的内存量过小,而文件系统产生的元数据过大,考虑性能原因不能把文件存储成文件。

甚至也不能采用haystack存储方式,haystack 元数据虽然小,但也超过ARM存储机的内存量。

atlas架构如上图所示,altas采用分布式元数据管理机制, 根据哈希策略将对象元数据切片成N个slice,这些slice交由PIS(Patch and Index Server)集群管理,每个PIS节点负责管理多个slice。

slice 到PIS的映射表通过元数据服务器管理(图中未画出),映射表较小,能被客户端全量缓存。

PIS的结构如上图所示,replication模块以主从复制方式保证slice三副本一致性。

写请求发往主节点,主节点生成唯一请求ID之后将ID和请求转发给从节点,从节点接收到请求之后,追加到patch模块维护的log文件。

请求ID的作用是串行化写,即从节点按照ID排序串行化执行请求。

主节点至少收到一个从节点的响应后,将KV写入本地,并告诉客户端写成功。

(如何保证一致性?)。

网易视频云技术分享:HBase优化实战

网易视频云技术分享:HBase优化实战网易视频云是网易倾力打造的一款基于云计算的分布式多媒体处理集群和专业音视频技术,提供稳定流畅、低时延、高并发的视频直播、录制、存储、转码及点播等音视频的PAAS 服务,在线教育、远程医疗、娱乐秀场、在线金融等各行业及企业用户只需经过简单的开发即可打造在线音视频平台。

现在,网易视频云的技术专家给大家分享一则技术文:HBase 优化实战。

背景Datastream一直以来在使用HBase分流日志,每天的数据量很大,日均大概在80亿条,10TB的数据。

对于像Datastream这种数据量巨大、对写入要求非常高,并且没有复杂查询需求的日志系统来说,选用HBase作为其数据存储平台,无疑是一个非常不错的选择。

HBase是一个相对较复杂的分布式系统,并发写入的性能非常高。

然而,分布式系统从结构上来讲,也相对较复杂,模块繁多,各个模块之间也很容易出现一些问题,所以对像HBase这样的大型分布式系统来说,优化系统运行,及时解决系统运行过程中出现的问题也变得至关重要。

正所谓:“你”若安好,便是晴天;“你”若有恙,我便没有星期天。

历史现状HBase交接到我们团队手上时,已经在线上运行有一大段时间了,期间也偶尔听到过系统不稳定的、时常会出现一些问题的言论,但我们认为:一个能被大型互联网公司广泛采用的系统(包括Facebook,twitter,淘宝,小米等),其在性能和可用性上是毋庸置疑的,何况像Facebook这种公司,是在经过严格选型后,放弃了自己开发的Cassandra系统,用HBase取而代之。

既然这样,那么,HBase的不稳定、经常出问题一定有些其他的原因,应用反应经常会过段时间出现数据写入缓慢,导致应用端数据堆积现象,是否可以通过增加机器数量来解决?其实,那个时候,我们本身对HBase也不是很熟悉,对HBase的了解,也仅仅在做过一些测试,了解一些性能,对内部结构,实现原理之类的基本上都不怎么清楚。

网易视频云:视频播放的基本原理

网易视频云是网易倾力打造的一款基于云计算的分布式多媒体处理集群和专业音视频技术,为客户提供稳定流畅、低时延、高并发的视频直播、录制、存储、转码及点播等音视频的PaaS服务。

在线教育、远程医疗、娱乐秀场、在线金融等各行业及企业用户只需经过简单的开发即可打造在在线音视频平台。

现在,网易视频云与大家分享一下视频播放的基本原理。

几乎所有的视频播放器,如VLC、MPlayer、Xine,包括DirectShow,在播放视频的原理和架构上都是非常相似的,理解这个对理解VLC的源码会有事半功倍的效果。

大致的来说,播放一个视频分为4个步骤:1. acess 访问,或者理解为接收、获取、得到2. demux 解复用,就是把通常合在一起的音频和视频分离(还有可能的字幕)3. decode 解码,包括音频和视频的解码4. output 输出,也分为音频和视频的输出(aout和vout)拿播放一个UDP组播的MPEG TS流来说吧,access部分负责从网络接收组播流,放到VLC的内存缓冲区中,access模块关注IP协议,如是否IPv6、组播地址、组播协议、端口等信息;如果检测出来是RTP协议(RTP协议在UDP头部简单得加上了固定12个字节的信息),还要分析RTP头部信息。

这部分可以参看VLC源码/modules/access/udp.c 。

在同目录下还可以看到大量的access模块,如file、http、dvd、ftp、smb、tcp、dshow、mms、v4l?等等而demux部分首先要解析TS流的信息。

TS格式是MPEG2协议的一部分,概括地说,TS通常是固定188字节的一个packet,一个TS流可以包含多个program(节目),一个program又可以包含多个视频、音频、和文字信息的ES流;每个ES流会有不同的PID标示。

而又为了可以分析这些ES流,TS有一些固定的PID用来间隔发送program 和es流信息的表格:PAT和PMT表。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

网易视频云:面向海量用户的分布式视频处理技术
网易视频云是网易倾力打造的一款基于云计算的分布式多媒体处理集群和专业音视频技术,为客户提供稳定流畅、低时延、高并发的视频直播、录制、存储、转码及点播等音视频的PaaS服务。

在线教育、远程医疗、娱乐秀场、在线金融等各行业及企业用户只需经过简单的开发即可打造在在线音视频平台。

作者:
系统介绍
网易视频云支持面向海量用户的分布式视频处理,包含录制、转码、视频合成、截图等常用的视频处理任务。

一方面视频云承载了众多网易内部视频应用的后台视频处理,另一方面也渐渐以公有云的身份走入大家视野。

视频云的视频处理子系统需求模型如下所示:
视频云上层服务根据业务模型,向视频处理子系统发起视频处理任务,处理子系统根据任务类型调度到合适的worker节点做处理。

在任务产生事件时,处理子系统会将事件回调通知给上层服务,如录制切片事件、视频转码完成事件。

在过去几年,视频云为网易内部视频应用提供了稳定可靠的大规模音视频处理服务,如青果、云音乐、教育产品。

近两年,随着公有云服务模式趋于成熟,网易视频云渐渐以公有云的身份被大家所了解,与私有云相比,公有云的视频云要面临以下两个挑战:1. 海量用户2. 资源超售
在内部服务时代,视频云需要服务的应用数量有限,调度系统和回调系统压力较小,而且可以为一些应用定制特殊功能。

而在公有云服务中,面向海量企业用户,调度系统承担的压力更重,在保障公平调度的基础上,需要实现调度能力的水平扩展。

在为内部应用提供服务时,为了保障各个应用的服务质量,一般不做处理资源超售,但是在公有云中,由于用户太多,资源闲置是一种常态,不超售会造成极度的资源浪费。

因此,在保障公有云的服务质量前提下,最大限度的节约成本是视频云在公有云场景下需要攻克的重要课题之一。

为了做好这一点,公有云提供了比以前更加细致的任务统计,资源监控,便于公有云的容量规划。

系统架构
视频云的视频处理系统架构如下图所示:
∙sdk:接口层,上层服务通过SDK向视频处理系统发起任务和事件回调
∙scheduler:调度子系统,又分为在线调度器和离线调度器
∙worker:任务执行器,一般包含10-1000个slot,每个slot对应一个处理任务
∙notifier:事件回调子系统,收集各个worker中的任务事件,并通知SDK
∙configserver:集群管理,元数据同步,任务统计和资源监控等
∙dashboard:可视化运维的WEB工具
以上模块和子系统的实现,满足了视频云对用户管理、任务调度、任务追踪、事件回调和文件存储等核心功能需求。

在非功能性方面,视频云实现了调度子系统的高可用和水平扩展,worker宕机重试。

configserver在架构中属于单点,通过主从架构实现高可用。

核心技术FlickRpc框架
FlickRpc是视频云团队自主研发的一个通用rpc框架,是各个组件模块互相调用和通信的基础。

FlickRpc采用了netty长连接和json通信格式,使用google 的gson库实现json格式的序列化和反序列化,与grpc,avro一类的开源RPC 框架相比,FlickRpc无需定义消息格式,可像使用本地方法一样调用RPC,并且FlickRpc中不存在json反序列化与JAVA继承的冲突,更加简单易用;FlickRpc 提供了同步调用和异步调用两种模式,可以通过静态上下文获取RPC远端信息;
虽然FlickRpc是为视频云开发,但其本身是一个通用RPC框架,可以在任何系统中使用。

FlickRpc的使用极大简化了视频云在通信层的开发量,未来FlickRpc会独立开源。

灵活的调度模式
视频云视频处理系统有在线和离线调度器两种不同调度子系统,在线调度器适用于录制、截图以及在线视频合并等在线视频处理。

这种任务的特点是具有很强的时效性,需要实时调度。

例如录制任务,如果调度产生较大延迟,会导致录制内容丢失。

离线调度器适用于各种类型的转码业务,特点是任务可以积压,可以慢慢异步消费。

如点播系统的视频转码,一个用户可以一次性提交很多待转码视频,只要在一个笼统的时间范围内完成即可,无需所有任务实时调度。

离线调度器是视频云超售的基础,因为只有允许一定的任务积压,才能在保证服务可靠的前提下节约资源成本。

租约与高可用
configserver和其他组件通过租约的方式实现元数据同步和高可用,以离线调度器高可用为例,如下图所示:
调度器A和调度器B负责调度不同用户的离线任务,A和B在启动时会向configserver注册,并获取元数据和租约信息,以及他们各自需要调度哪些用户。

A和B每隔一段时间(5s-60s)会向configserver续租,如果A在某个时间宕机,一段时间后configserver会发现A持续多个周期没有续租,为了保障用户调度的高可用,configserver需要将A负责的调度任务交由相邻节点B继续执行,为此configserver会更新B的租约,在下次B续租时可以更新到新的租约和元数据,并触发reload。

通过租约机制,可以实现不同组件的元数据同步,调度器的水平扩展和主从模式等。

负载均衡
一个视频处理集群中,可以部署多个worker group,任务参数中可以指定在哪个worker group中执行,worker group的划分使视频云可以在容量规划中因地制宜,例如录制任务需要大量的IO操作,因此录制任务的worker group需要配备SSD和千兆网络,而录制过程几乎不会耗CPU资源,可以在CPU配备上节约成本,而转码任务反之。

在一个worker group内,任务调度在没有超过worker slot上限的前提下,采用取模哈希的方式满足负载均衡,当worker调度到的任务数到达slot上限,会从调度器中剔除,直到新的slot空闲出来。

相关文档
最新文档