Skip to content

Queue流程

流程是所有控件的基类容器,其余控件不允许单独拖拽至空白画布中,需要先将Queue流程拖拽至画布中,然后再将组件拖拽至Queue流程中。

一个Queue流程即为一个队列消费者程序

队列消费者主要负责读取并处理队列消息。

业务属性

属性含义说明输入限定示例
text与控件关联的文本设计页控件显示常量QueueFlow
queueType队列类型目前仅支持RocketMQ选择值RocketMQ
rocketMQ消息队列可选已在资源配置中配置的消息队列资源选择值my_rocketmq
consumerGroup消费者分组指定消费者分组常量group1
topictopic名称指定消费消息的topic常量topic1
reconsume_times最大重试次数默认3常量3

输入参数

消费消息会自动赋值到变量message,可在流程中直接引用。

使用示例

假设需要创建一个队列消费者,获取队列消息,并插入到数据库中

已配置的队列资源名为myRocketMQ,消费分组和消费主题为group1topic1

  • Queue流程设置

选择消费队列类型为RocketMQ,消费队列资源选择myRocketMQ

输入消费组和主题为group1topic1

img_queue_1.png
  • 插入消息到数据库

假设已存在表,表字段只有message_timemessage,代表消息时间和消息内容

添加数据库操作控件,使用消息变量message插入表

ExecuteSQL控件的使用方法请参照ExecuteSQL控件说明文档

img_queue_2.png
  • 创建发送RocketMQ消息的http服务

创建一个新的http接口,添加RocketMQ控件,发送消息This is a example message

RocketMQ控件的使用方法请参照RocketMQ控件说明文档

img_queue_3.png
  • 调用RocketMQ发送消息的http服务

将上述两个流程打包并部署到引擎端后,对RocketMQ发送消息的http接口进行调用。

使用curl请求接口:

$ curl http://localhost:6636/api/rocketMQ
$ curl http://localhost:6636/api/rocketMQ

请求接口前表数据为空,请求接口后查询表数据:

img_queue_4.png