资源成本降低80%!Serverless云函数的弹性架构实践

服务上云已经是当下助力企业降本增效的主流方案,开发者不需要自建IT机房、购买服务器、存储设备和其他各种网络设备,只需评估自身业务所需的TPS值、数据存储量、网络带宽等,再根据这些需求,向云服务厂商购买对应算力和容量的云主机等资源。

日常中,很多业务存在波峰波谷的特性,如电商的活动促销、通勤出行的早晚高峰、游戏的晚高峰等,这些场景下业务请求量会急剧上升,为了确保该情况下业务不受损,服务所使用的云端资源就需要针对峰值进行配置。而业务峰值有可能只持续几分钟或者集中于个别时间段,这就使得峰值回落后会出现大量资源闲置的情况。

承载搜索能力的产品,亦存在上述的问题。

传统云服务架构,资源闲置率高

某搜索服务支持应用及应用内容的搜索,可通过多个入口进行搜索查询,数据覆盖面广(诸如:应用信息、搜索词、论坛帖文、视频、歌曲等)。其服务整个后台环境原先是基于云主机搭建,日均请求量1亿+,运行过程中存在明显的波峰波谷,相对,其业务痛点亦不可避免。

痛点1:资源利用率低

以某天的函数请求量为例,服务的波峰数值约16w,波谷约为4w,访问量相差4倍。考虑到波峰的情况,其用于扩容的虚拟机资源需要匹配峰值并预先购买,待业务低谷时,已购的虚拟机资源就会大量闲置,利用率低。

痛点2:弹性伸缩能力构建成本高

业务自主构建弹性伸缩能力涉及到云资源层、业务服务和数据的伸缩,构建和运维的人力资源成本比较高。此外,伸缩响应速度相对较长,一般都为秒级,在业务峰值时可能会出现部分请求无法正常响应,导致服务限流,影响用户体验。

Serverless云函数,智能弹性伸缩

Serverless云函数是事件驱动的函数计算平台,可以根据函数的实际流量进行弹性伸缩。使用云函数,开发者无需对服务器资源进行管理。该搜索服务所面临的痛点以及其波峰波谷的业务特性,与Serverless云函数的应用场景正好契合。由此,相关团队基于当前业务的传统架构,定制了迁移至Serverless架构的方案。

(图源华为开发者联盟)

此次改造,技术团队从适配云函数框架、流水线改造、功能和性能测试的验收,至后续灰度放量上线,在短短1个月内全部实现。而且,业务迁移至Serverless架构后,凭借资源池化、代码缓存等技术,降低了函数启动时延,实现秒级扩缩容。

随着业务请求量的逐步上升,函数自动扩容,业务流量下降之后,函数自动缩容。如下图所示,很明显,函数Pod伸缩曲线和业务请求曲线一致。

(示例:函数请求量趋势图,图源华为开发者联盟)

(示例:改造后函数Pod数量趋势图,图源华为开发者联盟)

改造实践,资源成本降低80%

该搜索服务原先采用增强型C3云服务器,根据业务流量,其一年总耗费约70万元。

迁移前,基于业务日常的请求量,借助资源拟合曲线和拟合方程,团队测算出能节约超过40%的成本。那在改造完成后,无需关心使用的主机类型,业务直接部署在函数容器内,依托弹性伸缩的架构,资源成本究竟降低多少?

根据云函数的定价和计费规则,业务使用成本主要为函数调用次数和函数资源使用量。按照其日请求量1亿+计算,其1年的函数调用次数以及资源使用量的费用约13万元。

(数据来源:华为开发者联盟)

和采用云主机的方式相比,费用从近70万元下降至13万元,资源成本降低80%以上。(具体改造时间结合业务场景和使用案例预估)

实例验证,作为新一代的云服务形态,HUAWEI AppGallery Connect的 Serverless 云函数服务,应用于传统服务云化改造,或新服务直接上云,降本效果显著。

极速弹性,支持高并发度和吞吐量,云函数的应用场景丰富,更多内容,可至 HUAWEI AppGallery Connect>我的项目>构建>云函数 进一步了解。

(免责声明:本网站内容主要来自原创、合作伙伴供稿和第三方自媒体作者投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
任何单位或个人认为本网站中的网页或链接内容可能涉嫌侵犯其知识产权或存在不实内容时,应及时向本网站提出书面权利通知或不实情况说明,并提供身份证明、权属证明及详细侵权或不实情况证明。本网站在收到上述法律文件后,将会依法尽快联系相关文章源头核实,沟通删除相关内容或断开相关链接。 )