消息队列规划开发Skill

MQ 选型、Topic/队列设计、消费幂等、死信与重试策略。当需要规划消息队列架构(选型、主题设计、可靠性、幂等与重试)时使用。

Sky-Cube 67196fc 2.5 KB Updated

File contents

消息队列规划开发Skill

适用场景

引入或治理消息队列:选型、Topic/队列划分、生产消费规范、幂等与重试死信策略、积压与安全防护。

执行步骤

  1. 选型:高吞吐日志/流式数据→Kafka;业务消息/事务消息/延迟消息→RocketMQ;灵活路由/低延迟任务→RabbitMQ;按团队运维能力与场景匹配,不贪大求全。
  2. Topic 与队列设计:按业务域划分 Topic,禁止一个 Topic 混多业务;分区/队列数量与消费并发匹配;消息体统一封装(消息ID/业务类型/时间戳/业务数据),格式版本化。
  3. 生产端规范:消息 key 保证同 key 有序(需验证具体实现);同步/异步发送按可靠性要求选择;事务消息/半消息用于本地事务与消息一致性场景。
  4. 消费幂等:消费侧唯一键(业务单据号/消息ID)去重表或状态机判定;重复消费必须安全。
  5. 重试与死信:消费失败重试(次数有限+退避),重试耗尽进入死信队列并告警;死信人工处理流程明确。
  6. 可靠性:确认机制、持久化、主从/多副本;消息丢失与重复的边界在文档中写明。
  7. 安全与治理:开启认证与 ACL,敏感字段加密或脱敏;积压监控告警,积压处置预案(扩容消费者/降级非核心消费)。

规范要点

  • 消费端必须幂等,所有消费逻辑按「可能重复」设计。
  • 禁止在消费者中做无界同步阻塞(长 IO/远程调用),耗时任务转异步线程池或独立流程。
  • 消息体禁止携带敏感明文;消息不可篡改场景需签名或走内网加密通道。
  • 死信必须可观测、可告警、有人处理,禁止静默丢弃。
  • Topic/队列变更走版本化与兼容评估,禁止直接改线上消费者契约。

输出模板

## MQ 规划方案
选型结论:MQ/版本/部署拓扑/理由
Topic 清单:名称/业务域/分区数/消息格式版本
生产消费规范:发送方式/确认机制/并发配置
幂等与重试:去重方案 + 重试次数/退避 + 死信处理流程
监控告警:积压阈值/消费延迟/失败率

自检清单

  • 选型与业务场景、运维能力匹配
  • Topic 按业务域划分,消息格式版本化
  • 消费幂等已设计,重复消费安全
  • 重试与死信闭环,死信有告警和处理人
  • 认证/敏感加密/积压监控到位

Sky-Cube/fullflow-dev-agent/tree/main/.claude/skills/mq-planning commit 67196fcea0

Frequently asked questions

npx skillmds@latest add sky-cube/skill-2