开发者只需专注于编写业务逻辑代码,而无需关心底层服务器的配置、部署、运维与扩展等基础设施管理任务。这部分由云厂商来管理。
这里以函数的形式运行,这也是为什么你能看到云厂商卖 云函数 的服务。这也被称为FaaS(Function as a Service)
无服务器函数通常由事件触发,例如:
- 用户上传文件到对象存储(如 S3)
- 数据库记录变更
- HTTP 请求到达 API 网关
- 定时任务(Cron Job)
可以自动 弹性伸缩,当业余多的时候进行扩容,保证了服务的稳定。只按照实际使用的时间进行付费。无请求时,不计算费用。
一些潜在的问题:
- 冷启动延迟:长时间未调用的函数首次执行时会有延迟
- 无状态性:函数执行结束后状态不会保留,需依赖外部存储
- 供应商锁定:不同云厂商的无服务器服务接口不完全兼容,迁移成本较高
- 调试复杂:分布式、事件驱动的架构使得本地调试和日志追踪更具挑战性