下单性能优化
2021-05-14 16:27:42   1  举报             
     
         
 交易下单流程,性能优化
    作者其他创作
 大纲/内容
 MQ
    YES
  需要合理配置重试策略
  NO
  order
  是否支付完成
  save order status
  校验成功
  save order/order_items/promotion/ship
  workflow
  save payment status
  rocketMq
  使用agg,不开启L2
  1、最大化减小消息体2、后续可以设置优先级队列
  trade-rpc
  if db
  创建shippment
  冻结津贴、券、库存
  success
  数据异步保存
  流程开始
  保存order status
  支付下单,获取支付参数
  payment
  流程结束
  addPaymentItem
  我的订单,极端情况下会出现urd有数据,但是xcache、db没有订单数据
  支付成功处理
  流程节点
  save paymentItem
  expiredTime 7天
  异常处理
  save xcache
  支付成功通知
  trade-order
  new message
  event处理
  send msg
  trade-payment
  save payment
  存在
  算价
  userOrder
  query payment/status
  DB
  创建不可见订单
  submitted message
  send message
  query order item/promotion
  xcache
  confirmed message
  urd
  最后的卡点
  1、order query 服务细粒度接口2、查询组件,先查xcache,没有查db,回写xcache3、上线方案4、一个完整流程xcache挂了没问题,会插DB、查DB,但是如果写入xcache后,xcache挂掉,会出现查不到数据的情况5、rocketMq消息压缩、缩减6、后续压测改造,mock支付模块,做一个支付成功处理的stub
  confirm order
  sentinelpass
  pay
  保存我的订单
  update
  下单并直接支付流程
  save order、order item、promotion、ship
  开关/降级
  拆单
  同步urd
  扩展校验
  订单提交
  confirmPayment
  payment成功消息
   
 
 
 
 
  0 条评论
 下一页