本文介绍什么是全球消息路由以及全球消息路由任务管理,以便您按需同步消息,实现数据跨地域(Region)的一致性。

什么是全球消息路由

消息队列RocketMQ版的全球消息路由功能常用于同步不同地域之间的消息,保证地域之间数据的一致性。您可以同步所有消息,也可以按过滤规则,例如通过指定的Tag将消息过滤之后再进行同步。该功能依托阿里云优质基础设施实现的高速通道专线(高速通道无需另行开通),高效地实现不同地域之间的消息同步复制。具体实现如下图所示。

全球路由
注意
  • 使用全球消息路由功能会带来额外的费用,详情请参见计费概述
  • 不支持传递路由,例如地域A到地域B再到地域C,地域A的消息不会经过地域B再路由到地域C,如有需要请直接创建地域A到地域C的路由。
  • 目前仅公网地域不支持全球消息路由功能,其他地域均支持。
  • 源Topic和目标Topic的消息类型需保持一致,如果源Topic是普通消息,则同步到的目标Topic也应是普通消息。
  • 考虑到需要同步的消息量以及网络带宽瓶颈,消息同步可能会产生一定的时间延迟,即消息到达目标Topic的时间会晚于该消息进入源Topic的时间。

创建全球消息路由任务

您可以登录消息队列RocketMQ版控制台,根据业务需求创建跨地域的全球消息同步任务。

前提条件

  • 创建全球消息路由任务前,请确保需同步消息的源地域和目标地域支持全球消息路由功能。
  • 源实例和源Topic以及目标实例和目标Topic已创建并可用,且源Topic和目标Topic的消息类型保持一致。

创建实例和Topic的具体步骤,请根据您所使用的账号类型参见创建TCP协议资源创建HTTP协议资源

操作步骤

  1. 登录消息队列RocketMQ版控制台
  2. 在左侧导航栏,单击全球消息路由
  3. 全球消息路由页面的左上方,单击创建消息路由任务
  4. 创建全球消息路由任务面板,填写以下信息后,单击确定
    creat_globa_message_route_button

    您需填写的信息如下表所示。

    参数 说明
    消息源
    • 源地域:选择需要同步的消息所属Topic的实例所在地域。
    • 源实例:选择需要同步的消息所属Topic所在实例。
    • 源 Topic输入需要同步的消息所属Topic名称。
    消息目标
    • 目标地域:选择消息将被同步到的Topic所属实例所在地域。
    • 目标实例:选择消息将被同步到的Topic所属实例。
    • 目标 Topic:输入消息将被同步到的Topic名称。
    过滤规则 输入过滤规则,按照该规则过滤后的消息才会被同步。您可直接输入Tag名按Tag过滤,例如您的消息Tag属性为CartService,则直接输入CartService;如果需要过滤多个Tag属性,则用双竖线(||)隔开,例如CartService||Inventroy||Payment。具体过滤方法请参见消息过滤
    描述 输入对该同步任务的具体描述或备注,以作区分和记录。
    立即启用
    • 是,创建后立即启用路由任务:表示全球消息路由任务创建成功后系统立即执行该任务,任务状态为已启用
    • 否,稍后手动启用路由任务:表示路由任务创建完成后,任务状态为未启用,用户使需要手动启用该任务系统才会开始执行。
    任务创建完成后,您可以在全球消息路由页面的任务列表中看到刚才创建的任务。

其他操作

您可以在全球消息路由页面搜索、启停、查看、删除任务,也可为任务编辑过滤规则。global_massage_route_list

搜索任务

全球消息路由页面,您可根据源地域、源实例ID、源Topic、目标地域、目标实例ID、目标Topic查询任务。

启停任务

全球消息路由页面的任务列表中,找到需要启停的任务,在其操作列单击更多,在下拉列表中,选择启用规则停用规则启动来启动或停止该任务。

  • 任务启动后,该任务的状态会切换至已启用
  • 任务停止后,该任务的状态会切换至已禁用

删除任务

前提条件:删除任务前需要先停止任务

全球消息路由页面的任务列表中,找到需要删除的任务,在其操作列单击删除,即可删除该任务。

任务被删除后将不会再在搜索结果中展示。

查看详情

全球消息路由页面的任务列表中,找到需要查看的任务,在其操作列单击查看详情图标,即可查看该任务的任务详情和消息详情,以及编辑过滤规则。详情请参见下文的编辑过滤规则

router_detail_new

任务详情页的关键字段的说明如下表所示。

参数 说明
任务状态 任务状态可以是未启用已启用已停用
消息同步TPS 每分钟统计一次消息同步的TPS值;TPS即平均每秒传输的消息数量。
消息延迟 当前同步到的位点和最新消息位点之间的时间差。
消息堆积量 当前还没有来得及同步的消息数量。
最新同步时间 最近一次消息同步发生的时间。

编辑过滤规则

前提条件:编辑过滤规则,需先停止任务

基础信息区域的过滤规则一栏,单击编辑图标,即可对过滤规则进行修改。

您可直接输入Tag名按Tag过滤,例如您的消息Tag属性为CartService,则直接输入CartService;如果需要过滤多个Tag属性,则用双竖线(||)隔开,例如CartService||Inventroy||Payment。具体过滤方法请参见消息过滤