更新时间:2024-11-11 GMT+08:00

使用Kafka触发器

本节介绍创建Kafka触发器,供用户了解Kafka触发器的使用方法。

使用Kafka触发器后,FunctionGraph会定期轮询Kafka实例指定Topic下的新消息,FunctionGraph将轮询得到的消息作为参数传递来调用函数,关于Kafka触发器的事件源介绍请参见支持的事件源

  • 分布式消息服务Kafka版与开源Kafka的差异说明,请参见Kafka与开源Kafka的差异
  • 对于处理失败的Kafka数据,Kafka触发器会丢弃过大记录(>6MB)。

前提条件

进行操作之前,需要做好以下准备。

创建Kafka触发器

  1. 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
  2. 选择待配置的函数,单击进入函数详情页。
  3. 选择“设置 > 触发器”,单击“创建触发器”,弹出“创建触发器”对话框。

    图1 创建触发器

  4. 设置以下信息。

    • 触发器类型:选择“分布式消息服务(Kafka)”。
    • 实例:选择已创建专享版Kafka实例。
    • 主题:选择专享版Kafka实例的Topic。
    • 批处理大小:每次从Topic消费的消息数量。
    • 用户名:Kafka实例开启SSL时需要填写。连接Kafka专享版实例的用户名。
    • 密码:Kafka实例开启SSL时需要填写。连接Kafka专享版实例的密码。

  5. 单击“确定”,完成kafka触发器的创建。

    • 开启函数流VPC访问后,需要在Kafka服务安全组配置对应子网的权限。如何开启VPC访问请参见配置网络
    • Kafka触发器当前支持选择多个Topic主题,从而避免Topic过多导致创建的触发器数量被限制。
      图2 支持多Topic选择

配置Kafka事件触发函数。

  1. 返回函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
  2. 选择待配置的函数,单击进入函数详情页。
  3. 在函数详情页,选择函数版本。
  4. 在“代码”页签下,单击“测试”,弹出“配置测试事件”对话框。
  5. 填写如表1所示测试信息后,单击“保存”。

    表1 测试信息

    参数

    说明

    配置测试事件

    可创建新的测试事件也可编辑已有的测试事件。

    选择默认值:“创建新的测试事件”。

    事件模板

    选择"分布式消息服务 Kafka版(KAFKA)"模板,使用系统内置Kafka事件模板。

    事件名称

    事件名称必须以大写或小写字母开头,支持字母(大写或小写),数字和下划线“_”(或中划线“-”),并以字母或数字结尾,长度为1-25个字符,例如kafka-123test。

    测试事件

    自动加载系统内置kafka事件模板,本例不做修改。

  6. 单击“测试”,可以得到函数运行结果,函数会返回输入kafka消息数据。