写点什么

为什么 FaaS 系统的复杂性不会随着规模的增长而指数增长?

用户头像
朱峰 Ben
关注
发布于: 2 小时前

爆爆奢的后端完全基于 FaaS 架构,支撑了整个企业从前端到后端的业务。


接下来分几篇文章,跟大家聊聊爆爆奢从 FaaS 架构获得的收益,抛砖引玉以供探讨。


今天先说 FaaS 在系统复杂性方面的收益​:为什么 FaaS 系统的复杂性不会随着规模的增长而指数增长?


大部分企业随着规模增长,需要经历从单体应用到微服务的重构历程。


通过拆分复杂的业务的模块,把一个大型复杂的系统,变成一个个相对简单易维护的小系统。但随着规模的进一步增长,这些初期的小系统,也会逐渐变成庞然大物,然后面临再一次的拆分。


而 FaaS 是以函数为单位的系统,每个函数只处理一个单一的业务流程,如果业务流程变复杂了,可以原子化的将一个函数扩展成多个函数,每个函数依然只处理一个单一的业务流程。


随着规模的增长,会沉淀下大量的云函数,但因为云函数部署时会锁定当时的依赖项等信息,因此这些云函数几乎可以永久正常工作而无需运维。


也就是说,FaaS 开发人员只需专注于增量部分的开发,无需关注存量的维护。


进一步假设,当增长量是线性稳定的时,那开发的工作量也是稳定的。


于是同样的开发投入,在 FaaS 架构下可以有持续稳定的产出,而在微服务架构下,产出会随着时间的增长而逐渐下降。


反过来说,为了得到持续稳定的产出,FaaS 架构只需要持续稳定的投入即可,而微服务则需要不断增加投入。


更何况随着开发投入的增加,技术管理、人员管理的成本和难度,都会指数级的增加。


曾经的企业不得不承担这块额外的风险,而在云时代,FaaS 成为了切实可行的基础架构,你跟不跟?

发布于: 2 小时前阅读数: 5
用户头像

朱峰 Ben

关注

还未添加个人签名 2017.11.30 加入

爆爆奢 技术总监 腾讯云最具价值专家 FaasJS 创始人

评论

发布
暂无评论
为什么 FaaS 系统的复杂性不会随着规模的增长而指数增长?