异步事件全链路
mermaid
flowchart TD
A["订单本地事务"] --> B["Outbox 写入 OrderCreated"]
B --> C["Relay 发布到 Binder"]
C --> D["Kafka/RabbitMQ 交换机或主题"]
D --> E["消费组分配分区/队列"]
E --> F["通知、支付、搜索消费者"]
F --> G{"处理成功?"}
G -- "是" --> H["ACK/提交 Offset"]
G -- "否" --> I["按策略重试"]
I --> J["超过预算进入死信并告警"]
F --> K["幂等键与业务状态机"]Stream 负责编程模型和 Binder 适配,消息代理负责持久化与投递,Bus 更适合广播配置刷新等控制事件。消费者必须幂等,不能把 ACK 当成业务事务提交的替代品。
