带你读《云原生架构白皮书2022新版》——南瓜电影 CTO 庄徐麟分享如何在 7 天内全面实现业务 Serverless 化(2)

本文涉及的产品
Serverless 应用引擎 SAE,800核*时 1600GiB*时
云原生网关 MSE Higress,422元/月
性能测试 PTS,5000VUM额度
简介: 带你读《云原生架构白皮书2022新版》——南瓜电影 CTO 庄徐麟分享如何在 7 天内全面实现业务 Serverless 化(2)

《云原生架构白皮书2022新版》——各个行业面临的挑战及解决方案——南瓜电影 CTO 庄徐麟分享如何在 7 天内全面实现业务 Serverless 化(1) https://developer.aliyun.com/article/1232779


2、选型


针对以上的问题,我们在想下一步应该怎么改造,当时内部有两个方案,但都存在一些弊端:

方案一:脚本深度优化,虽然能解决一些重复运维问题,但维护成本太高了,真正能把脚本写好的运维人员太难招了。

我们也一直在用脚本,但确实没办法完全自动化,紧急扩容时还得人工购买 ECS。


方案二:自建 K8s,虽然能很好解决高密部署的问题,极大降低成本,也能自动扩容应用实例,但爆炸半径比 ECS 大,我们还是有点担心。最重要的是 K8s 学习成本实在是太高了,搭个环境跑跑容易,但正儿八经上生产的话还是要组建好专业团队,短期内显然无法完成。


image.png

后来,经过阿里云同事介绍,很快又有了方案三 —— 使用 SAE,也是最终落地的方案。


方案三:选择阿里云 Serverless 应用引擎(简称 SAE),对 SAE 的第一印象就是简单上手,省时省力,不用做

任何改造,WAR/JAR 包直接上传部署,也不用买机器运维机器,节省开发大量时间。并且,SAE 就是一个超大规

模的弹性资源池,想弹多少弹多少,想什么时候弹就什么时候弹,非常适合南瓜电影的业务场景。

image.png

3、实战


ROUND 1:CI/CD Pipeline – 加速迭代效率


在正式迁移业务之前,我们做的第一件事是基于 Travis CI + SAE 把 CI/CD 的流水线打通,提升发版效率。之前,

当我们在 GitHub 上提交代码时,Travis CI 工具会自动集成,自动进行单元测试,测试通过后,会把文件上传到私

有化 OSS 上,然后部署到 ECS 上。使用 SAE 后,只需要把 deploy 到 ECS 改成 deploy 到 SAE,非常简单,

对开发侧没有任何影响。并且在应用部署的时候还能选择配置单批、分批、金丝雀等多种发布策略,异常时立刻中止

和回滚,十分高效。


image.png

ROUND 2:上线第一个应用 API 网关


接下来就是挑选第一个应用实战了。当时我们做了一个大胆的决定:首先迁移 API 网关。API 网关是我们内部最核

心的应用也是压力最大的应用,为什么这么选择呢?

首先,它有全国各地的部署。第二,它本身就有大量的 ECS 集群,我们只要操作调度系统把部分流量打到 SAE,

假设 SAE 出现不稳定,也可以瞬间把流量切回到 ECS,对用户几乎没有影响。第三,API 网关作为总流量入口,

突发流量较多,比较匹配 SAE 的弹性优势,可以最大程度的测试出 SAE 是否适合我们的业务。

起初上生产环境,我们自己也很担心,为防止意外发生,我们决定让原有的 ECS 实例和 SAE 上的实例一起跑,如

果一方发生问题立马切换流量,跑稳之后再将 ECS 实例作为灾备链路。


image.png

image.png

《云原生架构白皮书2022新版》——各个行业面临的挑战及解决方案——南瓜电影 CTO 庄徐麟分享如何在 7 天内全面实现业务 Serverless 化(3) https://developer.aliyun.com/article/1232777

相关实践学习
【文生图】一键部署Stable Diffusion基于函数计算
本实验教你如何在函数计算FC上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。函数计算提供一定的免费额度供用户使用。本实验答疑钉钉群:29290019867
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
23天前
|
机器学习/深度学习 人工智能 自然语言处理
赋能百业:多模态处理技术与大模型架构下的AI解决方案落地实践
【9月更文挑战第4天】赋能百业:多模态处理技术与大模型架构下的AI解决方案落地实践
赋能百业:多模态处理技术与大模型架构下的AI解决方案落地实践
|
1月前
|
存储 监控 数据可视化
SLS 虽然不是直接使用 OSS 作为底层存储,但它凭借自身独特的存储架构和功能,为用户提供了一种专业、高效的日志服务解决方案。
【9月更文挑战第2天】SLS 虽然不是直接使用 OSS 作为底层存储,但它凭借自身独特的存储架构和功能,为用户提供了一种专业、高效的日志服务解决方案。
66 9
|
2月前
|
存储 NoSQL Java
一天五道Java面试题----第十一天(分布式架构下,Session共享有什么方案--------->分布式事务解决方案)
这篇文章是关于Java面试中的分布式架构问题的笔记,包括分布式架构下的Session共享方案、RPC和RMI的理解、分布式ID生成方案、分布式锁解决方案以及分布式事务解决方案。
一天五道Java面试题----第十一天(分布式架构下,Session共享有什么方案--------->分布式事务解决方案)
|
2月前
|
Serverless
解决方案评测|《Serverless高可用架构》获奖名单
解决方案评测|《Serverless高可用架构》获奖名单正式公布!!
147 1
|
2月前
|
数据挖掘 关系型数据库 MySQL
Serverless高可用架构的解决方案体验
Serverless高可用架构的解决方案体验
148 6
|
2月前
|
弹性计算 Kubernetes 安全
Kubernetes 的架构问题之在Serverless Container中保障应用的安全防护如何解决
Kubernetes 的架构问题之在Serverless Container中保障应用的安全防护如何解决
145 8
|
2月前
|
机器学习/深度学习 分布式计算 Cloud Native
云原生架构下的高性能计算解决方案:利用分布式计算资源加速机器学习训练
【8月更文第19天】随着大数据和人工智能技术的发展,机器学习模型的训练数据量和复杂度都在迅速增长。传统的单机训练方式已经无法满足日益增长的计算需求。云原生架构为高性能计算提供了新的可能性,通过利用分布式计算资源,可以在短时间内完成大规模数据集的训练任务。本文将探讨如何在云原生环境下搭建高性能计算平台,并展示如何使用 PyTorch 和 TensorFlow 这样的流行框架进行分布式训练。
71 2
|
2月前
|
弹性计算 Kubernetes Serverless
Kubernetes 的架构问题之ACK/ASK支持ECI的Serverless Container如何解决
Kubernetes 的架构问题之ACK/ASK支持ECI的Serverless Container如何解决
81 7
|
2月前
|
弹性计算 运维 关系型数据库
云上Serverless高可用架构一键部署体验与测评
在数字化转型背景下,Serverless架构因其实现业务敏捷、降低成本及提升服务可靠性而备受青睐。本文以阿里云Serverless应用引擎(SAE)为核心,展示了一种高可用、低成本且易于扩展的解决方案。通过单地域双可用区部署,构建了具备自动伸缩与故障恢复能力的架构。借助阿里云的一键部署功能,大幅简化了搭建流程,实现了快速部署,并通过性能与成本分析验证了其优势。对比传统ECS,SAE在资源利用与运维效率上表现更佳,特别适合平均负载较低的应用场景。
|
2月前
|
弹性计算 Kubernetes Serverless
Kubernetes 的架构问题之Serverless Container中不支持特权模式的问题如何解决
Kubernetes 的架构问题之Serverless Container中不支持特权模式的问题如何解决
70 6

热门文章

最新文章

下一篇
无影云桌面