SpringCloud 微服务主流程所有微服务启动后把自己 IP 端口注册到 Nacos。前端请求统一接入 Gateway网关 → 请求进入网关后首先被 Sentinel 拦截处理IP黑白名单过滤、路由权限校验、网关全局限流。校验放行之后网关Gateway根据服务注册中心 Nacos/Eureka 的服务列表拉取服务实例通过LoadBalancer选一台健康实例自动做负载均衡转发。业务微服务需要跨服务调用时通过OpenFeign 发起跨服务调用。Feign 底层依赖LoadBalancer 按照轮询 / 随机规则 选一台健康实例。调用频繁超时 / 报错 → Sentinel 触发熔断熔断后 Feign 直接走 Fallback 降级不卡死线程LoadBalancer 自带健康探测自动剔除故障、宕机、失联的微服务实例后续流量只分发到正常节点。电商下单实战应用1. 用户下单 → 2. 校验商品/价格 → 3. 扣减库存Redis/DB → 4. 创建订单 → 5. 订单状态流转待支付 → 已支付 → 已发货 → 6. 超时未支付 → 自动取消订单 回滚库存需要注意的坑1. 并发超卖必须用Redis 分布式锁库存必须用乐观锁2. 重复下单接口必须做幂等性token / 唯一订单号用户维度加锁3. 订单创建了库存没扣 / 库存扣了订单没创建必须用Seata 分布式事务保证原子性4. 超时取消不准时必须用消息队列延迟消息不要用定时任务不准、性能差5. 远程调用异常必须用Sentinel 熔断、降级、限流调用失败不能产生脏数据6. 高并发流量冲击库存预热到 Redis下单接口限流使用 MQ 异步削峰7. 订单状态错乱状态机严格控制只能正向流转不能乱跳状态订单全业务时序图
浅谈电商下单微服务流程
发布时间:2026/5/23 21:44:59
SpringCloud 微服务主流程所有微服务启动后把自己 IP 端口注册到 Nacos。前端请求统一接入 Gateway网关 → 请求进入网关后首先被 Sentinel 拦截处理IP黑白名单过滤、路由权限校验、网关全局限流。校验放行之后网关Gateway根据服务注册中心 Nacos/Eureka 的服务列表拉取服务实例通过LoadBalancer选一台健康实例自动做负载均衡转发。业务微服务需要跨服务调用时通过OpenFeign 发起跨服务调用。Feign 底层依赖LoadBalancer 按照轮询 / 随机规则 选一台健康实例。调用频繁超时 / 报错 → Sentinel 触发熔断熔断后 Feign 直接走 Fallback 降级不卡死线程LoadBalancer 自带健康探测自动剔除故障、宕机、失联的微服务实例后续流量只分发到正常节点。电商下单实战应用1. 用户下单 → 2. 校验商品/价格 → 3. 扣减库存Redis/DB → 4. 创建订单 → 5. 订单状态流转待支付 → 已支付 → 已发货 → 6. 超时未支付 → 自动取消订单 回滚库存需要注意的坑1. 并发超卖必须用Redis 分布式锁库存必须用乐观锁2. 重复下单接口必须做幂等性token / 唯一订单号用户维度加锁3. 订单创建了库存没扣 / 库存扣了订单没创建必须用Seata 分布式事务保证原子性4. 超时取消不准时必须用消息队列延迟消息不要用定时任务不准、性能差5. 远程调用异常必须用Sentinel 熔断、降级、限流调用失败不能产生脏数据6. 高并发流量冲击库存预热到 Redis下单接口限流使用 MQ 异步削峰7. 订单状态错乱状态机严格控制只能正向流转不能乱跳状态订单全业务时序图