更新时间:2022-04-22 GMT+08:00
分享

使用DMS触发器

关于DMS触发器事件源具体介绍请参见支持的事件源

老一代DMS于2021年6月30日已经停服,本章节内容即将下线。

分布式消息服务Kafka版(Distributed Message Service for Kafka)是一款基于开源社区版Kafka提供的消息队列服务,向用户提供计算、存储和带宽资源独占式的Kafka专享实例,建议您使用Kafka触发器。

前提条件

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

  • 已经创建消息队列和消费组,此处以队列queue-test、消费组group-dms为例,创建过程请参考创建队列创建消费组
  • 已经在函数工作流服务创建函数,创建过程请参考初始化函数

设置函数委托

创建DMS触发器时,需要设置函数委托,委托权限需要包括DMS。如果不设置委托,无法加载已创建的DMS消息队列或者消息队列不可用,委托的创建请参考创建委托

由于创建HelloWorld函数的时候没有设置委托,所以需要先修改函数委托。

  1. 登录FunctionGraph控制台,进入“函数”界面。
  2. 在“函数”界面,选择“函数列表”,单击HelloWorld函数名称,进入HelloWorld函数详情界面。
  3. 在HelloWorld函数详情页,单击“配置”,进入“配置”页签。
  4. 在“配置”页签,修改函数委托,将委托修改为创建委托中创建的serverless-trust委托。单击“保存”,完成委托修改。

创建DMS触发器

  1. 登录FunctionGraph控制台,进入“函数”界面。
  2. 在“函数”界面,选择“函数列表”,单击HelloWorld函数名称,进入HelloWorld函数详情界面。
  3. 在HelloWorld函数详情界面,单击“触发器”页签。
  4. 在“触发器”页签,单击“创建触发器”,弹出“创建触发器”对话框。
  5. 设置以下信息。

    • 触发器类型:选择“分布式消息服务(DMS)”。
    • 队列:选择创建的队列,例如:queue-test。
    • 消费组:选择创建的消费组,例如:group-dms。
    • 拉取周期:拉取周期为DMS触发器轮询消息的间隔时间。

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

创建消息触发函数

  1. 登录“分布式消息服务”,进入“队列管理”界面。
  2. 在“队列管理”界面,单击queue-test队列名称,进入队列详情页。
  3. 在队列详情页,单击“生产消息”,弹出“生产消息”界面。
  4. 在“生产消息”界面,填写消息信息,如表1所示。

    表1 消息信息表

    字段

    填写说明

    消息正文

    输入以下内容:{"message":"hello"}。

    消息标签

    本例不填写。

    消息属性

    本例不填写。

    生产消息具体参数介绍请参见生产消息

  5. 单击“确定”,完成消息创建。
  6. 在“消费组”栏的group-dms消费组可以查看“可消费消息数”。

    DMS触发器会按照创建DMS触发器中设置的拉取周期轮询消息,如果轮询到可消费消息,会消费消息,触发函数运行,具体示例事件请参见支持的事件源

查看函数运行结果

  1. 登录FunctionGraph控制台,进入“函数”界面。
  2. 在“函数”界面,选择“函数列表”,单击HelloWorld函数名称,进入HelloWorld函数详情界面。
  3. 在HelloWorld函数详情界面,单击“日志”页签,查询函数运行日志。
  4. 单击操作栏的“查看上下文”,查看日志详细信息。
分享:

    相关文档

    相关产品

close