engram
设计原型 English ← 全部页面
总览面板 知识库 acme-checkout-architecture

acme-checkout-architecture

摘要已过期 — 3 天
12 章 · 18,400 字 · 最后更新 2026-04-15

1. 概述

acme-checkout-service 负责处理 Acme 平台的所有购买流程:购物车管理、支付处理、库存预留、收据发送和订单确认。峰值时每小时处理约 4,200 笔交易。

该服务是一个 Python FastAPI 应用,以 3 个副本的形式部署在 Nginx 入口后。服务本身不存储持久状态 — 所有状态存放在 PostgreSQL(订单)、Redis(购物车会话)和支付方账本中。

Web Frontend Checkout Service FastAPI · 3 副本 支付方 Payment Provider 库存 Inventory Service 通知 邮件 · 短信 PostgreSQL 订单 Redis 购物车会话
图 1. 服务整体拓扑。

2. 核心服务

结账服务协调 4 个下游系统。每次调用都套用了熔断器,配置为 2 秒超时和 3 次重试。

服务 协议 SLA 降级策略
payment-provider HTTPS REST 99.95% 入队重试
inventory-svc gRPC 99.9% 软预留
notifications-svc AMQP(异步) 99.5% 记录日志并在下一小时重试
fraud-svc HTTPS REST 99.9% 转人工审核队列

3. 数据流

一次结账请求经历 5 个阶段:购物车校验 → 欺诈检测 → 支付授权 → 库存预留 → 确认通知。每个阶段在调用下一个服务之前,都会向 orders 表写入一条结构化事件。

文章元数据
作者
platform-team, checkout-squad
最后编辑
2026-04-15
编译状态
已过期(3 天)
范围
project
操作