触发器概述
更新时间:2024-07-05
函数计算CFC(Cloud Function Compute)提供基于事件触发、全托管的云端计算能力。函数计算通过事件触发器连接到其他服务,当对应服务发出请求时,函数即会响应运行,作出相应处理和反馈。例如:通过BOS触发器将函数连接到百度智能云对象存储服务,设置函数响应BOS的新建对象事件。当用户的对象存储中增加新的文件时,函数即被触发执行,对新上传的文件进行诸如内容检查等操作。
名词解释
- 触发器(Trigger): 触发器是对CFC来说的,表示一种触发关系,包括触发源、目标函数Brn、触发条件等。对触发源所在的服务方来说,触发器是一种事件通知,当触发条件发生时,则通知CFC、调用某个函数。
触发器的信息由服务方持久存储,服务方检测到触发条件发生时调用CFC函数。一个函数可以创建多个触发器。
- 触发源: 触发源的粒度是由业务确定,比如Bos触发器的触发源精确到一个bucket;而CDN触发器的粒度则比较大,触发源就是服务本身。
- Policy: Policy是CFC根据触发源为函数设置的允许触发规则,CFC持久存储Policy。没有Policy的话,触发源对函数的调用请求会失败,一条Policy的作用范围是单个函数Brn + 触发源。
触发器分类
目前CFC支持10种触发器触发函数,各触发器的调用方式如下表所示:
名称 | 调用方式 |
---|---|
DuerOS触发器 | 同步 |
Duedge触发器 | 同步 |
BOS触发器 | 异步 |
HTTP触发器 | 同步 |
CDN触发器 | 同步 |
百度消息服务(Kafka)触发器 | 异步 |
定时触发器 | 异步 |
BLS触发器 | 异步 |
API Gateway触发器 | 同步 |
百度消息服务(专享版Kafka)触发器 | 异步 |
创建触发器
CFC支持两种方式为函数创建触发器:控制台创建和通过API接口创建。
控制台创建
1、登录管理控制台,选择“产品服务> 函数计算CFC”,进入“函数列表”页面。
2、点击需要添加触发器的函数名称即(test-20191211), 进入函数详情页面。
3、点击左侧导航栏中的“触发器”,进入触发器配置页面,如下图所示:
4、在弹出框中,点击下拉框“请选择事件源进行添加”,选择需要添加的触发器
5、之后在弹出框中配置触发器选项,并点击确认,完成触发器的创建。以BOS触发器为例:
6、在函数配置页面“触发器”一栏中,可以看到刚刚创建好的BOS触发器及其信息。
API接口创建
用户可以使用函数计算Open API创建触发器,具体操作方式,请参考创建触发器。