视频需求超平常数 10 倍,却节省了 60% 的 IT 成本投入是一种什么样的体验?


作者 | 山猎

近年来,Serverless 一直在高速发展,并呈现出越来越大的影响力。主流的云服务商也在不断地丰富云产品体系,提供更好的开发工具,更高效的应用交付流水线,更好的可观测性,更细腻的产品间集成,但一切才刚刚开始。

国内一些大公司已经有了一些成熟的 Serverless 应用案例,一些创业公司也开始加入 Serverless 阵营,如果说Serverless 到底解决了什么问题,核心就是节约成本、节省精力。

蓝墨是一家由美国留学生回国创业的高科技公司,专注于移动互联时代数字出版和移动学习领域的新技术研究及平台运营,依托自主研发的蓝墨移动交互式数字教材核心技术体系,为出版社、学校和教师提供移动交互式数字教材、校园移动学习平台及教师自助数字出版等解决方案。

自 2012 年成立以来,蓝墨的技术团队对于一些开放的新技术抱有极大的热情,并愿意应用快速迭代的互联网新技术,来确保其业务系统稳定运行。2020 年初,疫情期间,在线教育迎来需求爆发。为了应对高流量,蓝墨加大了整合业界优质课程资源的力度,不断拓展自身的业务边界,在赢得机遇的同时,技术团队也面临了前所未有的挑战。 

面临挑战

作为教学平台,蓝墨每天要处理大量视频教材资源,涉及到视频剪辑、切分、组合、转码、分辨率调整、客户端适配等一系列复杂的技术工作,视频处理相关业务是蓝墨的技术团队面临的最大挑战之一。通过几年的技术实践,蓝墨技术团队通过 FFmpeg 等技术已经建立起一整套自主可控视频处理机制,支撑了业务的快速发展。但今年的业务增长速度让蓝墨的技术团队始料未及,高峰期数十倍于往年的视频处理需求让现有的架构不堪重负,严重影响了用户体验。

高峰需求量难规划,水平扩容难走通

面对挑战,最初蓝墨技术团队希望通过水平扩容解决问题,但在全天范围内,视频处理的需求量存在极为陡峭的波峰波谷,大量的任务发生在几个高峰时间段,而且具有一定程度上的突发性。如果按照最高峰期的需求量来规划系统容量,会造成计算资源的大量浪费,而且最高峰期的需求量到底是多少,也是很难预判的。如果采用错峰处理的方式,可以降低计算资源成本,但对于用户的需求得不到及时的处理。水平扩容方案因此被放弃。 

自身业务逻辑要求,难以使用第三方的视频转码服务

还有一种解决方案是直接使用云厂商提供的视频转码服务,类似于 BaaS 的方式。采用这样的方案的优势是,可以完全不用考虑容量规划的问题,根据实际业务量按需调用云服务即可。但蓝墨的视频处理机制做得非常精细,包含着大量自定义的业务逻辑,需要使用代码来实现,第三方的视频转码服务根本无法满足要求。

解决方案

推倒重来!蓝墨现在的核心诉求概括有三个:节省成本、极致弹性、免运维,而这些恰恰是 Serverless 最擅长解决的问题。经过对国内云厂商提供的 Serverless 服务的多方面调研后,蓝墨技术团队一致认为在视频处理领域阿里云函数计算是最适合他们的方案。

阿里云函数计算(Function Compute,简称 FC)是一个事件驱动的全托管 Serverless 计算服务,对于使用者而言,无需管理服务器等基础设施,只需编写代码并上传,函数计算会准备好计算资源,并以弹性、可靠的方式运行代码。由于阿里云函数计算完全兼容现有的代码逻辑,也能够支持各类主流的开发语言,所以蓝墨技术团队可以把代码逻辑以近乎无缝衔接的方式从原有的架构迁移到阿里云函数计算上,并且成本极低。通过对接 OSS 触发器,只要 OSS 上有新的视频源文件上传,就能自动拉起函数计算实例,开启一次视频处理业务的生命周期。通过整合 Serverless 工作流,还能对分布式任务进行统一编排,实现对于大文件切片后进行并行处理并最终合并的复杂操作,更进一步的提升了处理效率。

1.png


对于蓝墨的技术团队而言,函数计算是一种完全按需调用的 Serverless 化方案,能够充分利用云计算的弹性能力。
  • 一方面,阿里云函数计算能够在短时间内迅速调集上万个实例的计算资源,实现视频处理任务

0 个评论

要回复文章请先登录注册