实现内容: - 添加 OutboxEvent 模型到 schema.prisma - 创建 OutboxRepository 服务处理事件持久化 - 创建 OutboxPublisherService 后台轮询发布事件到 Kafka - 修改 SystemWithdrawalApplicationService 将事件写入事务内 - 添加数据库迁移文件创建 outbox_events 表 技术细节: - 业务数据和事件数据在同一个数据库事务中写入 - 后台任务每秒轮询 outbox_events 表,发布 PENDING 状态事件 - 事件发布后标记为 SENT,等待消费方确认后标记为 CONFIRMED - 超时未确认的事件自动重试(指数退避策略) - 保证事件不丢失,即使 Kafka 暂时不可用 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| migrations | ||
| schema.prisma | ||