Files
Web_BLS_Heartbeat_Server/openspec/specs/kafka/spec.md
XuJiacheng 910f1c353f feat: 实现Redis集成与Kafka消息处理优化
- 新增Redis集成模块,支持心跳写入与控制台日志队列
- 优化Kafka消费者实现,支持多实例与自动重连
- 改进消息处理器,支持批量处理与多层解码
- 更新数据库表结构,调整字段类型与约束
- 添加Redis与Kafka的配置项和环境变量支持
- 补充测试用例和文档说明
2026-01-14 17:58:45 +08:00

1.6 KiB
Raw Blame History

Kafka消息处理规范

Purpose

本规范定义本服务如何连接 Kafka 集群、订阅主题并消费消息(以 buffer 形式透传 payload以及错误处理/重连与消费确认语义。

Requirements

Requirement: Kafka连接管理

系统 MUST 能够建立和维护与 Kafka 集群的连接。

Scenario: 成功连接Kafka集群

  • WHEN 系统启动时
  • THEN 应该成功连接到配置的Kafka集群
  • AND 应该监控连接状态

Scenario: Kafka连接断开重连

  • WHEN Kafka连接断开时
  • THEN 系统应该自动尝试重连
  • AND 重连失败时应该记录错误日志

Requirement: 心跳消息消费

系统 MUST 能够消费 Kafka 队列中的心跳消息。

Scenario: 消费心跳消息

  • WHEN Kafka队列中有心跳消息时
  • THEN 系统应该消费该消息
  • AND 将消息传递给处理器进行解包

Scenario: 二进制 payload 透传

  • WHEN Kafka 消息 value 可能为二进制压缩数据(非纯文本)
  • THEN Consumer 应使用 buffer 方式接收 value/key
  • AND 将原始 buffer 交由 Processor 执行解码/解压与反序列化

Scenario: 消息消费确认

  • WHEN 消息处理完成后
  • THEN 系统应该向Kafka确认消息已消费

Requirement: 消息过滤与路由

系统 MUST 能够根据消息类型过滤和路由心跳消息。

Scenario: 过滤无效消息

  • WHEN 接收到无效格式的消息时
  • THEN 系统应该丢弃该消息
  • AND 记录错误日志

Scenario: 路由有效消息

  • WHEN 接收到有效格式的心跳消息时
  • THEN 系统应该将消息路由到正确的处理器