更新时间:2025-08-07 GMT+08:00

分布式消息服务RocketMQ版

本章节介绍在事件流里添加分布式消息服务RocketMQ版事件源的方法。

前提条件

  • 已在分布式消息服务RocketMQ版中购买RocketMQ实例。
  • 当源端为分布式消息服务RocketMQ版时,目标端只支持选择FunctionGraph(函数计算)。

创建分布式消息服务RocketMQ版事件源

  1. 登录事件网格控制台
  2. 在左侧导航栏选择“事件流 > Serverless版事件流”,进入“Serverless版事件流”页面。
  3. 单击“创建Serverless版事件流”,然后单击左上角图标,输入事件流名称和描述,完成后单击“确定”。
  4. 单击“事件源”,弹出“配置事件源”对话框。
  5. 参考表1,填写事件源的配置信息。

    表1 分布式消息服务RocketMQ版参数说明

    参数名称

    说明

    事件提供方

    选择分布式消息服务 RocketMQ版。

    实例

    请选择实例。

    Group

    请输入消费组。

    Topic

    请输入Topic。

    SSL

    请选择是否开启SSL。

    ACL访问控制

    请选择是否开启ACL访问控制。

    • 当开启ACL访问控制时,需要配置用户名及密钥。
    • 确保创建的RocketMQ实例和配置RocketMQ事件源二者的“ACL访问控制”开关状态保持一致。

    tag

    请输入tag。

    消费超时时间(毫秒)

    请输入1000到900000之间的整数。

    消费方式

    请选择“并发消费”或“顺序消费”。

    消费线程数

    请输入20到64之间的整数。

    批量消费最大消息数

    请输入1到32之间的整数。

    最大重试次数

    请输入最大重试次数。

    • 设置-1表示无限重试,0表示不重试。
    • 如果RocketMQ版本为4.x版本,则默认允许每条消息最多重试16次,每次重试的时间间隔如表2所示。

    重试间隔(毫秒)

    请输入1000到30000之间的整数。

    表2 RocketMQ 4.x版本重试时间间隔

    第几次重试

    与上次重试的间隔时间

    第几次重试

    与上次重试的间隔时间

    1

    10秒

    9

    7分钟

    2

    30秒

    10

    8分钟

    3

    1分钟

    11

    9分钟

    4

    2分钟

    12

    10分钟

    5

    3分钟

    13

    20分钟

    6

    4分钟

    14

    30分钟

    7

    5分钟

    15

    1小时

    8

    6分钟

    16

    2小时

    表3 生产顺序性和消费顺序性组合

    生产顺序

    消费顺序

    顺序性效果

    设置消息组,保证消息顺序发送。

    顺序消费

    按照消息组粒度,严格保证消息顺序。 同一消息组内的消息的消费顺序和发送顺序完全一致。

    设置消息组,保证消息顺序发送。

    并发消费

    并发消费,尽可能按时间顺序处理。

    未设置消息组,消息乱序发送。

    顺序消费

    按队列存储粒度,严格顺序。 基于 Apache RocketMQ 本身队列的属性,消费顺序和队列存储的顺序一致,但不保证和发送顺序一致。

    未设置消息组,消息乱序发送。

    并发消费

    并发消费,尽可能按照时间顺序处理。

  6. 单击“下一步”,进入规则配置页面,规则配置可参考过滤规则参数说明
  7. 单击“下一步”完成规则配置,您可以参考路由到函数工作流,继续配置事件流的事件目标。

    事件源配置为分布式消息服务RocketMQ版时,配置事件目标为FunctionGraph(函数计算)时,执行方式可选择为“同步”或“异步”。

  8. 当事件源和事件目标都配置完成后,单击“保存”,完成事件流的创建。

    • MQ采集函数首次启动分钟级后生效。
    • 广播模式下不支持失败重试,即消费失败后,失败消息不再重试,消费者继续消费新的消息。
    • 发送到目标端失败时,将利用RocketMQ本身的重试能力进行重试,目标端需支持处理重复事件,达到重试上限时,源端消息进入RocketMQ对应topic的死信队列,EG事件不再投递。