本文介绍什么是全球消息路由以及如何管理全球消息路由任务,以便您按需同步消息,实现不同实例、不同Vhost间的消息路由。
背景信息
全球消息路由的功能和使用方式和开源Shovel插件保持一致,支持不同实例和Vhost间的Queue到Queue、Queue到Exchange的消息转发。在此基础上,除了可以本地域间消息转发,也可以支持跨地域消息转发。
注意事项
- 使用全球消息路由功能会带来额外的费用,计费说明如下:
总费用 = 云消息队列 RabbitMQ 版费用 + 事件总线EventBridge转发费用。云消息队列 RabbitMQ 版计费详情,请参见云消息队列 RabbitMQ 版计费概述;事件总线EventBridge计费详情,请参见事件总线EventBridge计费说明。
- 全球消息路由功能不支持传递路由,例如实例A到实例B再到实例C,实例A的消息不会经过实例B再路由到实例C,如有需要请直接创建实例A到实例C的路由。
- 鉴于消息同步的消息量以及网络带宽瓶颈,消息同步可能会产生一定的时间延迟。
前提条件
- 云消息队列 RabbitMQ 版源实例、源Vhost、源Exchange、源Queue以及目标实例、目标Vhost、目标Exchange、目标Queue已创建并可用。具体操作,请参见:
- 事件总线EventBridge
创建全球消息路由任务
- 登录云消息队列 RabbitMQ 版控制台,然后在左侧导航栏,单击全球消息路由。
- 在全球消息路由页面的左上方,单击创建任务。
- 在阿里云服务授权 - 从消息队列RabbitMQ版读取消息对话框,认真阅读提示信息,单击确认。首次创建全球消息路由任务,将自动创建服务的关联角色AliyunServiceRoleForEventBridgeSourceRabbitMQ与AliyunServiceRoleForEventBridgeSendToRabbitMQ。具体信息,请参见服务关联角色。说明
- AliyunServiceRoleForEventBridgeSourceRabbitMQ:事件总线EventBridge使用该角色接收源端实例发送的消息。
- AliyunServiceRoleForEventBridgeSendToRabbitMQ:事件总线EventBridge使用该角色转发消息给目标端实例。
- 在创建消息路由任务配置向导页面,配置消息路由的源端和目标端信息。在全球消息路由页面,可以看到已创建的任务。其状态为服务中。
相关操作
您可以查看消息路由任务详情、停用、编辑和删除任务,对任务进行管理。
- 在全球消息路由页面,在搜索框根据任务名称搜索任务。
- 找到目标任务,在操作列,您可以根据实际需求对任务进行操作。
- 单击详情,您可以查看路由任务配置的详情信息。
- 单击停用,您可以停用路由任务。
- 单击编辑,您可以更改路由任务的配置信息。
- 单击删除,您可以清理路由任务。