控制台管理云函数
云函数是云开发平台的核心功能之一,有效管理云函数可以提高应用的性能、可靠性和安全性。本文档将指导您如何通过控制台管理云函数的生命周期。
管理方式
您可以通过以下两种方式管理云函数:
- 控制台管理:使用云开发平台 云函数管理页面 进行可视化操作
- 命令行管理:使用 CloudBase CLI 工具 进行命令行操作
本文档主要介绍控制台管理方式,CLI 管理请参考 CLI 管理云函数。
创建云函数
通过控制台创建
- 登录云开发平台,进入 云函数管理页面
- 点击「新建云函数」按钮
- 填写函数名称、运行环境、函数描述等信息
- 选择函数模板或从头开始编写代码
- 点击「确定」完成创建
开发与部署
在线编辑与部署
您可以直接在云开发控制台编辑云函数代码:
- 在 云函数管理页面 选择目标函数
- 在代码编辑器中修改代码
- 点击「保存并安装依赖」完成部署
上传代码包部署
对于较复杂的项目,您可以将代码打包后上传:
- 将函数代码及依赖打包成 ZIP 文件
- 在云函数详情页面,选择「上传 ZIP 包」
- 选择本地 ZIP 文件并上传
- 点击「保存并安装依赖」完成部署
提示
ZIP 包的根目录应该包含入口文件,例如 Node.js 环境下的 index.js
。
函数配置
在 云函数管理页面 选择目标函数,点击「配置」选项卡,可以调整以下配置项:
基础配置
配置项 | 说明 | 默认值 | 可选范围 |
---|---|---|---|
内存配置 | 云函数运行时的最大内存限制 | 256MB | 128MB - 2048MB |
超时时间 | 函数最大运行时间,超时将被强制中断 | 20秒 | 1秒 - 900秒 |
环境变量 | 以键/值对形式定义的环境变量 | 无 | 自定义 |
注意
内存配置会影响函数的性能和计费,请根据实际需求合理设置。
网络配置
公网访问
云函数默认开启公网访问能力,您可以根据安全需求选择关闭。关闭后,函数将无法访问公网资源。
内网访问(VPC 配置)
您可以配置云函数访问 VPC 私有网络:
- 未配置 VPC:函数实例在独立网络环境中运行,具备外网访问能力
- 配置 VPC:函数实例在指定 VPC 网络中运行,可访问 VPC 内资源
提示
- 配置 VPC 后如需外网访问能力,请确认 VPC 网络中配置了 公网网关 或 NAT 网关
- 有关 VPC 网络配置的更多信息,请参考 VPC 私有网络说明
- 关于云函数网络配置的详细说明,请参考 网络配置详情
固定出口 IP
开启此功能后,云函数将获得一个固定的公网出口 IP,该 IP 会与同一命名空间下其他开启此功能的函数共享。
提示
只有云函数开启公网访问时,固定出口 IP 功能才能生效。
限频配置
云函数支持配置访问限频,帮助您控制函数的调用频率,防止恶意调用和资源滥用:
- 限频规则:可以设置每秒、每分钟或每小时的最大调用次数
- 限频策略:支持基于 IP、用户 ID 等维度进行限频控制
- 超限处理:当调用频率超过限制时,系统会返回相应的错误信息
提示
合理配置限频规则可以有效保护您的云函数免受恶意攻击,同时控制成本。详细配置方法请参考 限频功能配置指南。
预置并发配置
预置并发是云函数的高级功能,可以预先启动指定数量的函数实例,有效解决冷启动问题:
功能特点
- 消除冷启动:预置实例始终保持运行状态,请求到达时可立即处理
- 性能提升:避免了实例启动时间,显著提高响应速度
- 成本优化:按预置实例的运行时间计费,适合高频访问场景
配置方式
- 在云函数详情页面,选择「预置并发」选项卡
- 设置预置并发实例数量
- 配置预置并发的版本或别名
- 点击「保存」完成配置
提示
- 预置并发适用于访问量稳定且对响应时间要求较高的场景
- 预置实例会持续计费,请根据实际业务需求合理配置数量
函数监控
查看运行日志
在云函数详情页面,选择「日志」选项卡:
- 设置时间范围和日志级别
- 查看函数执行日志和错误信息
- 支持实时日志查看和历史日志检索
监控指标
在云函数详情页面的「监控」选项卡,您可以查看以下关键指标:
- 调用次数
- 错误次数
- 平均执行时长
- 内存使用情况
删除云函数
通过控制台删除
- 在 云函数管理页面 找到目标函数
- 点击「更多」→「删除」
- 在确认对话框中输入函数名称确认删除
警告
删除云函数操作不可恢复,删除后函数将不可访问,请谨慎操作。
使用 CLI 管理
如需使用命令行工具进行自动化部署和批量管理,请参考 CLI 管理云函数 文档。
常见问题
云函数部署失败怎么办?
- 检查代码是否有语法错误
- 确认依赖包是否兼容云函数环境
- 查看部署日志,定位具体错误原因
- 尝试减小部署包大小,云函数部署包有大小限制
云函数执行超时如何解决?
- 增加函数超时时间配置
- 优化代码执行效率
- 对于长时间运行的任务,考虑拆分为多个函数或使用异步执行
如何处理云函数冷启动问题?
- 保持函数代码精简,减少不必要的依赖
- 使用预置并发实例
- 定期预热函数,保持活跃状态
云函数如何访问数据库?
云函数可以通过 SDK 直接访问云开发数据库,无需额外的认证配置。示例代码:
const tcb = require('@cloudbase/node-sdk');
const app = tcb.init();
const db = app.database();
exports.main = async (event, context) => {
const collection = db.collection('users');
const result = await collection.get();
return result;
};
更多云函数相关问题,请参考 云函数常见问题解答。