云函数
2026年4月16日大约 2 分钟
云函数
云函数主要分为两种类型:普通云函数和 HTTP 云函数。两者在触发机制、并发模型及使用场景上有显著区别。
类型对比
| 对比维度 | 普通云函数 | HTTP 云函数 |
|---|---|---|
| 触发方式 | 事件驱动(如 SDK 调用、定时器、云产品事件) | HTTP 请求直接触发 |
| 入参格式 | 固定的 event 和 context 对象 | 原生 HTTP Request/Response 对象 |
| 并发模式 | 单实例串行处理(单实例单请求) | 单实例并发处理(单实例多并发) |
| 端口监听 | 无需监听端口 | 必须监听 9000 端口 |
冷启动机制
💡 核心提示:两种类型的云函数均存在冷启动现象。
- 普通云函数:由平台自动管理实例生命周期,冷启动对用户透明,但可能增加首次请求延迟。
- HTTP 云函数:
- 预置并发:建议设置预置并发实例。若配置了 $N$ 个预置实例,则至少有 $N$ 个实例处于热备状态,不会触发冷启动。
- 弹性伸缩:当请求量超过预置实例处理能力时,平台会创建新实例,此时新实例会经历冷启动过程。
调用 HTTP 云函数
要通过 HTTP 方式访问云函数,通常需完成以下配置步骤:
- 配置路由:在云开发控制台的「HTTP 访问服务」中,设置一个自定义的路由路径(例如
/api/my-function)。 - 绑定函数:将该路由与指定的 HTTP 云函数进行绑定,使其成为该函数的入口路径。
配置完成后,系统将生成一个标准的 HTTP URL(如 https://<env-id>.service.tcloudbase.com/api/my-function),您可以直接通过该 URL 发起 GET/POST 等请求来调用云函数。
⚠️ 关键注意事项:
scf_bootstrap文件HTTP 云函数依赖根目录下的
scf_bootstrap文件作为启动入口。该文件的权限和格式至关重要:
- 权限要求:必须具有可执行权限(通常为
777或755)。- 格式要求:首行需指定解释器(如
#!/bin/bash),且换行符需符合 Linux 规范(LF)。- 排查建议:若遇到启动失败或 502 错误,请优先检查此文件。建议在云开发控制台的在线编辑器中重新创建或覆盖该文件,以确保环境一致性。
