异步调用
更新时间:2026-09-24
概述
本文档介绍 CFC 异步调用的执行方式、适用场景和控制台配置方法。
CFC 目前支持以下两种调用方式:
- 同步调用:调用请求被函数处理后会直接返回结果,例如使用控制台调用、HTTP 触发器调用等。
- 异步调用:调用事件在写入函数计算内部队列后返回结果,函数计算系统会保证该消息被可靠处理。目前,除了 API 调用外,CFC 支持的异步调用方式包括 BOS触发器 和 定时任务触发器 两种触发方式。
前提条件
- 已登录百度智能云控制台,且具备函数计算 CFC 的访问权限。
- 已创建需要配置异步策略的目标函数,并可进入该函数的 基本信息 页面。
- 如需将异步执行目标配置为
cfc,请确保已存在可选的目标服务、目标函数以及版本或别名。## 异步执行过程
当函数被异步调用时,CFC会将用户请求先写入内部的消息队列中,并返回异步调用结果,接下来,CFC会从内部消息队列中读取消息,触发函数调用,如果函数执行执行失败次数超限或触发事件等待超时,则会触发目标服务(如函数或topic)。

相关概念
- 重试次数 函数异步调用最大允许重试的次数。
- 最长保留时间 单次请求最长被允许在内部消息队列保留的时间。
- 目标服务 异步调用执行完成后,被调用的相关服务。
使用限制
- 最大重试次数限制为0-3。
- 最长保留时间限制为 0-24 小时。
- 目标服务为函数时,不能绑定函数本身。
- 支持函数执行成功或失败时触发目标服务,目标服务有且只有一个。
注意:目标服务为函数时,应避免循环调用,如函数A配置了成功调用时的异步目标为函数B,为函数B配置了成功调用时的异步目标为函数A,当异步调用触发函数A时且执行成功后,则可能出现A-->B-->A...循环调用的情况。
异步调用适用场景
- 不需要经常查看每个执行结果
- 任务量多且比较密集
- 存在服务调用关系
最典型的场景比如:利用Bos触发器接收到日志后需要进行日志批量处理。
异步调用配置
导航路径:函数计算 CFC -> 函数列表 -> 目标函数 -> 基本信息
步骤 1:进入异步策略配置
在 基本信息 页面的 配置信息 区域,找到 异步策略配置,点击编辑图标,打开 异步策略配置 弹窗。该弹窗中可配置 重试次数、保留时间(s),以及 条件:成功时、条件:失败时 两个异步执行目标。



步骤 2:配置重试策略与异步执行目标
在 异步策略配置 弹窗中,根据业务需求设置重试策略与异步执行目标。在 条件:成功时 中选择目标类型后,点击 目标 对应的编辑图标完成目标配置;如无需失败回调,条件:失败时 可保持为 无。
| 参数 | 必填 | 说明 |
|---|---|---|
| 重试次数 | 否 | 设置异步调用最大重试次数,按业务容错需求填写,取值范围为 0-3。 |
| 保留时间(s) | 否 | 设置请求在内部消息队列中的最长保留时间,按秒填写,取值上限为 24 小时。 |
| 条件:成功时 | 否 | 选择函数成功执行后的目标类型。当前控制台支持 无、cfc、bms/topics。 |
| 服务 | 是 | 当 条件:成功时 选择 cfc 时,选择目标函数所属服务。 |
| 函数 | 是 | 当 条件:成功时 选择 cfc 时,选择接收二次调用的目标函数。 |
| 版本/别名 | 是 | 当 条件:成功时 选择 cfc 时,选择目标函数的版本或别名。 |
| 条件:失败时 | 否 | 选择函数失败执行后的目标类型;若无需失败回调,可保持为 无。 |
配置完成后,点击 【确定】 保存。



当前控制台的 目标类型 下拉列表支持 无、cfc、bms/topics 三种选项。其中:
cfc:当该次异步调用执行完成后,会根据满足的配置条件对目标函数进行二次调用。- 消息服务类目标:当该次异步调用执行完成后,会将此次调用信息写入用户配置的消息服务。
评价此篇文章
