系统管理的工作仍然要做,你只是把它外包给了 Serverless 环境 。这既不能说坏也不能说好——我们外包了大量的内容,是好是坏要看具体情况 。不论怎样,某些时候这层抽象也会发生问题,就会需要一个来自某个地方的人类系统管理员来支持你的工作了 。
文章插图
对比存储过程即服务
还有一种说法把 Serverless FaaS 看做“存储过程即服务(Stored Procedures as a Service)”,我想原因是很多 FaaS 函数示范都用数据库访问作为例子 。如果这就是它的主要用途,我想这个名字也不坏,但终究这只是 FaaS 的一种用例而已,这样去考虑 FaaS 局限了它的能力 。
我好奇 Serverless 会不会最终变成类似存储过程那样的东西,开始是个好主意,然后迅速演变成大规模技术债务 。— Camille Fournier
但我们仍然值得考虑 FaaS 是否会导致跟存储过程类似的问题,包括 Camille 提到的技术债 。有很多存储过程给我们的教训可以放在 FaaS 场景下重新审视,存储过程的问题在于:
- 通常依赖于服务商指定的语言,或者至少是指定的语言框架/扩展
- 因为必须在数据库环境中执行所以很难测试
- 难以进行版本控制,或者作为应用包进行管理
第一条就目前看来显然不是 FaaS 的烦恼,直接排除 。
第二条,因为 FaaS 函数都是纯粹的代码,所以应该和其他任何代码一样容易测试 。整合测试是另一个问题,我们稍后展开细说 。
第三条,既然 FaaS 函数都是纯粹的代码,版本控制自然不成问题;最近大家开始关心的应用打包,相关工具链也在日趋成熟,比如 Amazon 的 Serverless Application Model(SAM)和前面提到的其他 Serverless 框架都提供了类似的功能 。2018 年初 Amazon 还开放了 Serverless Application Repository(SAR)服务,方便组织分发应用程序和组件,也是基于 AWS Serverless 服务构建的 。
【看看顶级互联网公司都在研究的无服务器架构,看完收获满满】
推荐阅读
- 手机中病毒的9个迹象,看看自己的手机是否中招?
- 虾线有必要去掉吗?其中讲究真不少,爱吃虾的要看看
- 粉底液|粉底液才涂2小时不到,脸上就暗沉发黄?看看你是否忽略了这3点
- 一般金骏眉红茶怎么喝
- 金骏眉属于什么茶
- 微信视频号,下一个互联网营销带货风口,你了解吗?
- 抖音带货的秘传心法
- 抖音运营:抖音账号怎么定位
- 什么社群无需运营就会活跃?这种工具类社群你该看看
- 小程序:移动互联网的下一波浪潮