用途:为事件驱动架构、后台任务处理和服务解耦提供异步通信实现方案。适用场景包括长耗时操作阻塞 HTTP 请求、微服务解耦、需要保证投递的支付与订单处理、日志与指标事件流、复杂工作流编排以及邮件发送、图片缩放等后台任务。
主要能力:提供消息代理选型决策树,按需求推荐 Kafka(事件流、日志聚合、事件溯源)、任务队列(Celery/BullMQ/Asynq)、Temporal(复杂工作流与 Saga)、NATS(请求-应答/RPC)、RabbitMQ(复杂路由)和 Redis Streams(已有 Redis 时的简单队列)。给出吞吐与延迟对比,并覆盖事件命名规范、事件结构、死信队列、幂等处理、前端 SSE 状态更新等核心模式,同时列出常见反模式。
使用方式:按语言安装依赖,如 Python 使用 pip install confluent-kafka celery[redis] temporalio aio-pika redis;TypeScript/Node.js 使用 npm install kafkajs bullmq @temporalio/client amqplib ioredis;Rust 使用 cargo add rdkafka lapin async-nats redis;Go 使用 go get 安装对应 SDK。示例代码位于 examples 目录,参考文档位于 references 目录,脚本可用于 Kafka 测试与消息模式校验。
限制:资料未提供具体收费、价格、平台支持范围或性能保证;吞吐与延迟数据仅为资料中给出的参考值,实际表现取决于部署环境。部分内容为示例代码,需结合自身基础设施调整。