基于事件流实现Kafka消息路由
更新时间 2025-06-18 17:56:19
最近更新时间: 2025-06-18 17:56:19
本文介绍如何应用事件总线EventBridge的事件流功能实现分布式消息服务Kafka的消息路由。
前提条件
开通分布式消息服务Kafka并创建最少两个主题。
背景信息
事件流作为更轻量、实时端到端的流式事件通道,提供轻量级的流式数据的过滤和转换的能力,在不同的数据仓库之间、数据处理程序之间、数据分析和处理系统之间进行数据同步。源端分布式消息服务Kafka生产的消息可以通过事件流这个通道被路由到目标端的分布式消息服务Kafka。
步骤一:创建事件流
登录事件总线EventBridge控制台。
在左侧导航栏,单击事件流。
在事件流页面,单击创建事件流。
在创建事件流面板,设置任务名称和描述,配置以下参数,然后单击保存。
a.在Source(源)配置向导,选择数据提供方为分布式消息服务Kafka ,设置以下参数,然后单击下一步。
参数 说明 示例 Kafka实例 选择Kafka实例。 instance-xxx Kafka Topic 选择Kafka topic。 topic-xxx Group 选择消费组。 快速创建 消费位点 选择消费位点。 最新位点 b.在Filtering(过滤)配置向导,设置事件过滤规则,单击下一步。
c.在Sink(目标)配置向导,选择服务类型为分布式消息服务Kafka,配置参数,单击保存,如图1所示。
参数 说明 示例 Kafka实例 选择Kafka实例。 instance-xxx Kafka Topic 选择Kafka topic。 topic-xxx 消息体(value) 提取事件中的数据。 $.data.value 消息键值(key) 提前事件中的key到目标。 $.data.key 图1 创建事件流时目标类型选择分布式消息服务Kafka
创建事件流后,会有30秒~60秒的延迟时间,您可以在事件流页面的状态栏查看启动进度。
步骤二:测试验证
登录分布式消息服务Kafka管理控制台。
在左侧导航栏,单击实例列表,选择事件流的源实例。
在主题管理页面,选择源的目标主题,操作列点击更多,然后点击生产消息。
在生产消息对话框输入想要发送的消息,然后点击发送消息。
发送消息后返回实例列表,选择事件流的目标实例,进入管理。
在消息查询页面,选择目标实例的目标主题,然后按时间查询,查询最近收到的消息。
查看查询到的Key和Value值是否与生产的消息一致,详见图2。
图2 在分布式消息服务Kafka管理控制台查看消息详情