使用Kafka触发器后,FunctionGraph会定期轮询Kafka实例指定Topic下的新消息,FunctionGraph将轮询得到的消息作为参数传递来调用函数。
前提条件
进行操作之前,需要做好以下准备。
- 已经创建函数。
- 创建Kafka触发器,必须开启函数工作流VPC访问,请参见配置网络。
- 已经创建Kafka实例。
- 在Kafka实例下创建主题。
创建Kafka触发器
1、登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
2、选择待配置的函数,单击进入函数详情页。
3、选择“设置 > 触发器”,单击“创建触发器”,弹出“创建触发器”对话框。
4、设置以下信息。
- 触发器类型:选择“分布式消息服务(Kafka)”。
- 实例:选择已创建专享版Kafka实例。
- 主题:选择专享版Kafka实例的Topic。
- 批处理大小:每次从Topic消费的消息数量。
- 用户名:Kafka实例开启SSL时需要填写。连接Kafka专享版实例的用户名。
- 密码:Kafka实例开启SSL时需要填写。连接Kafka专享版实例的密码。
5、单击“确定”,完成kafka触发器的创建。
说明
开启函数流VPC访问后,需要在Kafka服务安全组配置对应子网的权限。如何开启VPC访问请参见配置网络。
Kafka触发器当前支持选择多个Topic主题,从而避免Topic过多导致创建的触发器数量被限制。
配置Kafka事件触发函数。
1、返回函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
2、选择待配置的函数,单击进入函数详情页。
3、在函数详情页,选择函数版本。
4、在“代码”页签下,单击“测试”,弹出“配置测试事件”对话框。
5、填写如下表示测试信息后,单击“保存”。
测试信息
参数 | 说明 |
---|---|
配置测试事件 | 可创建新的测试事件也可编辑已有的测试事件。选择默认值:“创建新的测试事件”。 |
事件模板 | 选择"kafka-event-template"模板,使用系统内置Kafka事件模板。 |
事件名称 | 事件名称必须以大写或小写字母开头,支持字母(大写或小写),数字和下划线“_”(或中划线“-”),并以字母或数字结尾,长度为1-25个字符,例如kafka-123test。 |
测试事件 | 自动加载系统内置kafka事件模板,本例不做修改。 |
6、单击“测试”,可以得到函数运行结果,函数会返回输入kafka消息数据。