使用 EventBridge 实现消息路由

本文涉及的产品
云消息队列RocketMQ,TPS总和2000次/秒
简介: 通过本教程的操作,您可以通过阿里云控制台,在事件总线控制台中创建消息路由服务,在 EventBridge 控制台实现消息路由与简单的消息脱敏。
+关注继续查看

使用 EventBridge 实现消息路由


1. 概述

4e39ec05bb0e7748324a9e1582c4661d_ymx73xcooyslq_9d1d65dea6a4442ca362913add0ebc06.png

本实验分 A B 两个可选场景:

  • A 场景通过MNS Queues1 投递至MNS Queues2
  • B 场景通过MNS Queues1 投递至RabbitMQ Queues

可根据兴趣选择不同场景进行体验,也可配置两条链路分别验证。


2. 创建 MNS 资源(A/B场景通用)

本步骤将指导您如何通过控制台创建消息队列 MNS 版。

使用您自己的阿里云账号登录阿里云控制台,然后访问消息队列MNS版控制台

在控制台左边导航栏中,单击队列列表。(资源地域为同地域即可,本次引导默认选杭州)

image

在列表页面,单击创建队列并填写名称信息“test-mns-q”

image

创建完成后点击“详情”

image

找到 MNS 公网接入点信息,并记住该信息,后续实验会用到。

E.g. http://1825725063814405.mns.cn-hangzhou.aliyuncs.com

image

注意:重复如上步骤即可 创建 A实验 链路的 “test-mns-q2”

image



3. 创建 RabbitMQ 资源(B 实验可选)

本步骤将指导您如何通过控制台创建消息队列 RabbitMQ 版。

使用您自己的阿里云账号登录阿里云控制台,然后访问消息队列RabbitMQ版控制台

在控制台左边导航栏中,单击实例列表。(资源地域为同地域即可,本次引导默认选杭州)

image

在列表页面,单击创建实例,并完成创建

image

创建完成后点击详情进入实例详情页

image

在“Vhost列表” 创建 “test-amqp-v”

image

在“Queue列表” ,选择Vhost为“test-amqp-v”,并创建 “test-amqp-q”

image

image


4. 创建 EventBridge 事件流任务 - MNS TO MN

本步骤将指导您如何通过控制台创建 EventBridge 事件流。

使用您自己的阿里云账号登录阿里云控制台,然后访问EventBridge 控制台。 注:第一次使用需开通。

单击“事件流”列表,并在列表创建任务 (资源地域为同地域即可,本次引导默认选杭州)

image

创建事件流名称为“test-amqp-mns2mns”,点击下一步

image

指定事件源,事件提供方为“消息服务MNS”,队列名称为“test-mns-q”,点击下一步

image

指定规则,规则部分可不做筛选,默认匹配全部,直接点击下一步

注意:规则内容可根据需求自行指定,为降低难度本次实验默认投递全部 更多详情

image

服务类型选择“消息服务MNS”,队列名称选择“test-mns-q2”,消息内容选择“部分事件”,点击创建

注意:消息内容可根据需求自行指定,本次实验默认投递data字段,更多详情

image

创建完成后,可点击“启动”来启动事件流

image


5. 创建 EventBridge 事件流任务 - MNS TO Ra

本步骤将指导您如何通过控制台创建 EventBridge 事件流。

使用您自己的阿里云账号登录阿里云控制台,然后访问EventBridge 控制台。 注:第一次使用需开通。

单击“事件流”列表,并在列表创建任务 (资源地域为同地域即可,本次引导默认选杭州)

image

创建事件流名称为“test-amqp-mns2rabbitmq”,点击下一步

image

指定事件源,事件提供方为“消息服务MNS”,队列名称为“test-mns-q”,点击下一步

image

指定规则,规则部分可不做筛选,默认匹配全部,直接点击下一步

注意:规则内容可根据需求自行指定,为降低难度本次实验默认投递全部 更多详情

image

服务类型选择“消息队列 RabbitMQ 版本”,具体配置如下,点击创建

实例ID:选择创建好的RabbitMQ ID
Vhost:选择“test-amqp-v”
目标类型:选择“Queue”
Queue:选择“test-amqp-q”
Body:选择“部分事件”,可填写“$.data”
MessageId:选择“常量”,可填写“0”
Properties:选择“部分事件”,如未有特殊诉求,可填写“$.data”

参数名称

参数说明

实例 ID

选择已创建的消息队列 RabbitMQ 版的实例ID。

Vhost

选择已创建的Vhost。

目标类型

选择Exchange 模式Queue 模式

Exchange

选择已创建的Exchange。仅当目标类型选择为Exchange时,需配置此参数。

Routing Key

单击部分事件常量。仅当目标类型选择为Exchange时,需配置此参数。

Queue

选择已创建的Queue。仅当目标类型选择为Queue 模式时,需配置此参数。

Body

单击完整事件部分事件常量模板

MessageId

单击部分事件常量模板

Properties

单击部分事件模板

该参数取值类型为Map

注意:消息内容可根据需求自行指定,本次实验默认投递data字段 更多详情

image

image

创建完成后,可点击“启动”来启动事件流


6. 验证同步任务

向 MNS 源端 Queues, “test-mns-q ” 发送实验消息 点击下载MNS SDK

修改 sample.cfg

image

在 “sample.cfg ” 填写AccessKeyId,AccessKeySecret,Endpoint 等信息

AccessKeyId,AccessKeySecret 可在 阿里云RAM 控制台创建

Endpoint 即 步骤1 , MN S公网接入点地址

image

AccessKeyId = LTAI5t96yU2S2E84BYsNNQ33
AccessKeySecret = xxxxxxx
Endpoint = http://1825725063814405.mns.cn-hangzhou.aliyuncs.com

填完效果如下,保存

image

找到 sample 目录的“sendmessage.py” 示例

image

将循环参数调整为200,并保存 (可选)

image

运行 “python sendmessage.py test-mns-q”

python sendmessage.py test-mns-q

image

事件流控制台,分别点开 “test-mns-q2”, “test-amqp-q” 查看详情转储详情。

注意:MNS Q 仅支持单订阅,不支持广播模式。故如需测试两条任务,需要将 MNS/RabbitMQ 两个实验,任选其一关停后进行实验。如需广播模式,请创建 MNS Topic 资源。

image

A 链路实验结果:

image

B 链路实验结果:

image


实验链接:https://developer.aliyun.com/adc/scenario/11750ce706f4423bbaec443727677f50

相关实践学习
RocketMQ一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
3月前
|
消息中间件 Serverless Kafka
基于 EventBridge 轻松搭建消息集成应用
基于 EventBridge 轻松搭建消息集成应用
21942 2
|
9月前
|
消息中间件 运维 监控
基于 EventBridge API Destination 构建 SaaS 集成实践方案
本次新增集成中心(Integration Center)是负责 EventBridge 与外界系统对接的模块,通过抽象与配置快速获取第三方事件并将事件集成到第三方系统。并且优化现有 HTTP Sink 集成方案,为用户下游集成创造更多适配场景。
247 0
基于 EventBridge API Destination 构建 SaaS 集成实践方案
|
9月前
|
机器学习/深度学习 消息中间件 JSON
EventBridge 在 SaaS 企业集成领域的探索与实践
当下降本增效是各行各业的主题,而 SaaS 应用作为更快触达和服务业务场景的方式则被更多企业熟知和采用。本文将结合实际业务场景讲述在 SaaS 行业的洞察与 SaaS 集成的探索实践。
255 0
EventBridge 在 SaaS  企业集成领域的探索与实践
|
9月前
|
消息中间件 JSON 关系型数据库
EventBridge 集成云服务实践
本篇文章主要向大家分享了通过 EventBridge 如何集成云产品事件源,如何集成云产品事件目标以及通过事件流如何集成消息产品。
237 0
EventBridge 集成云服务实践
|
9月前
|
SQL 存储 消息中间件
基于 EventBridge 构建数据库应用集成
本文重点介绍 EventBridge 的新特性:数据库 Sink 事件目标。
185 0
基于 EventBridge  构建数据库应用集成
|
9月前
|
消息中间件 存储 运维
EventBridge 与 FC 一站式深度集成解析
本篇文章通过对 EventBridge 与 FC 一站式深度集成解析和集成场景的介绍,旨在帮助大家更好的了解面对丰富的事件时,如何使用 EventBridge 与 FC 的一站式集成方案,快速基于事件驱动(EDA)架构建云上业务系统。
234 0
EventBridge 与 FC  一站式深度集成解析
|
9月前
|
消息中间件 JSON 自然语言处理
基于 EventBridge 构建 SaaS 应用集成方案
事件源是事件驱动的基石,如何获取更多事件源也是 EventBridge 一直在探索和尝试的方向。针对市场上其他云厂商和垂直领域的 Saas 服务,EventBridge 发布了 HTTP Source 能力,提供简单且易于集成的三方事件推送 ,帮助客户更加高效、便捷地实现业务上云。
199 0
基于 EventBridge 构建 SaaS 应用集成方案
|
9月前
|
消息中间件 运维 自然语言处理
EventBridge消息路由|高效构建消息路由能力
企业数字化转型过程中,天然会遇到消息路由,异地多活,协议适配,消息备份等场景。本篇主要通过 EventBridge 消息路由的应用场景和应用实验介绍,帮助大家了解如何通过 EventBridge 的消息路由高效构建消息路由能力。
127 0
EventBridge消息路由|高效构建消息路由能力
|
10月前
|
安全 jenkins API
EventBridge API 端点:让服务集成触手可及|学习笔记(二)
快速学习 EventBridge API 端点:让服务集成触手可及
217 0
EventBridge API 端点:让服务集成触手可及|学习笔记(二)
|
12月前
|
消息中间件 存储 关系型数据库
通过 EventBridge 快速集成云服务(一)| 学习笔记
快速学习通过 EventBridge 快速集成云服务。
176 0
通过 EventBridge 快速集成云服务(一)| 学习笔记
相关产品
云消息队列 Kafka 版
消息服务
云消息队列 MQ
推荐文章
更多