面对10倍需求只用 40% 成本,这是一种怎样的体验?

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
函数计算FC,每月15万CU 3个月
简介: 近年来,Serverless 一直在高速发展,并呈现出越来越大的影响力。主流的云服务商也在不断地丰富云产品体系,提供更好的开发工具,更高效的应用交付流水线,更好的可观测性,更细腻的产品间集成,但一切才刚刚开始。

作者 | 山猎

来源 | 凌云时刻(微信号:linuxpk)


前言

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

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

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


面临挑战

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

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

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

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

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


解决方案

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

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

image.png

对于蓝墨的技术团队而言,函数计算是一种完全按需调用的 Serverless 化方案,能够充分利用云计算的弹性能力。

一方面,阿里云函数计算能够在短时间内迅速调集上万个实例的计算资源,实现视频处理任务的快速执行;

另一方面,由于不需要预留计算资源,也不需要对底层的软硬件进行维护,可以极大地降低运营成本,让蓝墨技术团队更专注于复杂业务逻辑的实现上。

相比于传统的方式,基于阿里云函数计算的 Serverless 方案在视频处理场景下,帮助蓝墨节省了 60% 左右的 IT 成本投入。

在享受到函数计算所带来的巨大价值后,蓝墨也积极在视频处理之外的其他业务领域探索可以进行 Serverless 化改造的场景,并成功落地了阿里云函数计算和日志服务的集成,当日志以流的方式源源不断写入时,日志服务会自动触发函数计算对数据进行处理,分析日志中的重要信息,实现异常事件的报警,并按照业务规则把日志进行压缩、转换后存放到其他媒介中。

蓝墨技术团队负责人表示,将来蓝墨会将更多场景与阿里云函数计算进行整合,充分享受云原生的技术红利,提升整个团队的战斗力。而阿里云也将一直与用户站在一起,打赢接下来每一场漂亮的战斗!


阿里云函数计算

阿里云是国内最早一批推出 Serverless 计算服务的企业,函数计算(Function as a Service)更是 Serverless 中最具代表性的产品形态。可以说,蓝墨并不是第一家享受到函数计算 FC 巨大价值的企业,新浪微博、石墨文档、芒果TV等都是函数计算的拥趸者。前不久,在2020可信云线上峰会上,阿里云函数计算FC通过了基础能力要求、平台可观测能力、服务性能、服务和服务计量准确等21项测试,以全部满分的成绩通过了可信云函数即服务能力认证。此前,在 Forrester 发布的报告中,阿里云函数计算被给予“强劲表现者”的评价。

除了拓展更加丰富的产品形态,阿里云函数计算也不断优化用户体验,包括做了硬盘挂载、预留实例、镜像加速、大规模实例等业内领先的实践,真正把用户需求放在首位,沉下心来做对用户更有价值的产品。

相关实践学习
【文生图】一键部署Stable Diffusion基于函数计算
本实验教你如何在函数计算FC上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。函数计算提供一定的免费额度供用户使用。本实验答疑钉钉群:29290019867
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
目录
相关文章
|
29天前
|
SQL 缓存 监控
接口性能倍增记:一次成功的优化实践
在软件开发过程中,接口性能优化是提升用户体验和系统稳定性的关键环节。本文将分享一次接口优化的成功案例,从问题发现到解决方案实施,详细介绍我们的优化过程和成果。
28 0
|
4月前
|
数据采集 人工智能 算法
谷歌发布大模型数据筛选方法:效率提升13倍,算力降低10倍
【8月更文挑战第31天】近日,谷歌发布了一项名为多模态对比学习联合示例选择(JEST)的研究成果,旨在优化大模型预训练过程中的数据筛选。JEST通过联合选择数据批次而非独立选择示例,利用多模态对比目标揭示数据间的依赖关系,提高了学习效率。实验表明,JEST能显著加速训练并降低计算成本,最多减少13倍迭代次数和10倍计算量。这一成果有望推动大模型预训练更加高效和经济。论文详情见:https://arxiv.org/abs/2406.17711。
74 2
|
5月前
|
开发框架 Cloud Native Devops
对抗软件复杂度问题之软件复杂度的增加会导致研发效率降低,如何解决
对抗软件复杂度问题之软件复杂度的增加会导致研发效率降低,如何解决
|
7月前
|
缓存 安全 前端开发
5分钟,我把网站性能优化了3倍
5分钟,我把网站性能优化了3倍
|
7月前
|
人工智能 算法 搜索推荐
某国有银行业务收益提升30倍,它究竟是怎么做到的!
在激烈的银行竞争环境下,释放存量客户的复购潜力成为关注的重点。然而,目前银行销售理财产品过程中存在一系列问题,其中一个主要原因是过度依赖理财经理的个人经验。国有银行也难以避免这些问题在目标客户定位和营销执行过程中的出现。
|
测试技术 Docker 索引
性能提升40倍——线上真实重构案例分享
性能提升40倍——线上真实重构案例分享
253 0
|
存储 缓存 监控
浅谈系统性能提升的经验和方法
资金核对的数据组装-执行-应急链路,有着千万级TPS并发量,同时由于资金业务特性,对系统可用性和准确性要求非常高;日常开发过程中会遇到各种各样的高可用问题,也在不断地尝试做一些系统设计以及性能优化,在此期间总结了部分性能优化的经验和方法,跟大家一起分享和交流,后续遇到一些新的问题也会持续总结和补充。
39488 17
浅谈系统性能提升的经验和方法
|
Cloud Native 前端开发 Serverless
《2023云原生实战案例集》——04 互联网——Wolai 使用函数计算相比传统架构节省了一半以上的费用和人力
《2023云原生实战案例集》——04 互联网——Wolai 使用函数计算相比传统架构节省了一半以上的费用和人力
|
Cloud Native 架构师 程序员
为什么团队规模越大,发布反而变慢了|学习笔记
快速学习为什么团队规模越大,发布反而变慢了
106 0
为什么团队规模越大,发布反而变慢了|学习笔记
|
Cloud Native 架构师 Devops
为什么团队规模越大,发布反而慢了 | 学习笔记
快速学习为什么团队规模越大,发布反而慢了
为什么团队规模越大,发布反而慢了 | 学习笔记