在云的上下文中,Serverful 的计算就像使用低级的汇编语言编程,而 Serverless 的计算就像使用 Python 这样的高级语言进行编程。
如 c = a + b 这样简单的表达式,如果用汇编描述,就必须先选择几个寄存器,把值加载到寄存器,进行数学计算,再存储结果。
这就好比今天在云环境下 Serverful 的计算,开发首先需要分配或找到可用的资源,然后加载代码和数据,再执行计算,将计算的结果存储起来,最后还需要管理资源的释放。
Serverless 架构应该是采用 FaaS (函数即服务)和 BaaS (后端即服务)服务来解决问题的一种设计
对开发者来说,FaaS 就是 Serverless 的全部
Serverless 优缺点
优点
缺点
- 严重依赖云平台厂商
不同平台厂商没有统一的标准,由一个平台厂商迁移至另一个平台厂商有巨大的迁移成本 - 开发调试困难
- 底层硬件不确定