Skip to content

Redis Streams Sink 集成

本文介绍如何将 FlowMQ 数据写入 Redis Streams。

前提条件

  • 已了解管道结构与创建流程,参考 数据集成;Sink 连接器总览见 Sink
  • Redis 服务可访问
  • 已规划 Stream key 与消费组策略

配置步骤

  1. 在“数据管道”中创建管道,完成基础信息配置。
  2. 在 Source 步骤选择 Kafka(Topic:flowmq.mqtt.kafka),Processors 按需配置。
  3. 在 Sink 步骤选择 Redis Streams,配置 urlsstream 等参数。
  4. 点击“测试”验证连接。
  5. 继续完成确认步骤。

配置示例

以下示例将 Kafka Topic flowmq.mqtt.kafka 中的样例消息写入目标系统。样例 JSON 与 Source 约定见 Sink · 示例场景

可参考以下参数示例:

参数建议值
urlshost 127.0.0.1,port 6379(可选 database
kindsimple
mastermymaster
streamflowmq:mqtt:kafka
body_keybody
max_length0(不限制)

写入内容为样例 JSON 消息体;也可用 Processors 先抽取 data.value 等字段再写入。

必要表单参数

参数名后带 * 表示控制台必填。「支持表达式」为「是」时,可使用 ${! ... } 按消息动态取值,详见 Processors

参数支持表达式说明
urls*Redis 地址列表(每项含 host/port,可选 database)
kind*Redis 模式(simple/cluster/failover)
masterSentinel 主节点名。即便 kindsimple,也需填写非空值(如 mymaster),否则无法通过连通性校验
stream*Stream 名称
body_key*消息体字段键名
max_length*Stream 最大长度(0 表示不限制)
max_in_flight*并发写入上限

参数建议

  • stream 命名与业务域对应;可按消息动态生成
  • max_length 建议设置上限,避免无限增长

注意事项

  • 建议限制 Stream 长度,并统一规划消费组与 ACK
  • 即便 kindsimplemaster 也需填写非空值;urls 中的库号字段名为 database,勿使用 db
  • exclude_prefixes 若出现空行,连通性「测试」按钮不会出现;可填一个无害前缀(如 kafka_),或删掉空行后再测