秒杀流程
2020-12-04 09:52:53 0 举报
秒杀流程图
作者其他创作
大纲/内容
若库存值为零则进行用重新刷新数据库库存到redis库存缓存
rabbitmq收到消息根据商品信息查询数据库库存(有库存进行下一步)
成功
减少库存(对数据库操作-同时对比版本号字段是否相同)
秒杀商品
判断是否重复秒杀(在redis查询)-(是则不进行下面)
有
再进行预见库存并判断库存有无(无:更新内存标记并返回-流程结束)
下订单并将秒杀订单信息写入缓存--用于判断是否重复秒杀
rabbitmq(topic)进行异步下单(将用户、商品信息发送)
否
减库存 下订单 写入秒杀订单(开启事务-三个为同一事务)
预减redis库存返回库存值
利用HashMap进行内存标记防止频繁访问redis
rateLimiter进行限流
rabbitmq收消息体-判断是否重复秒杀
0 条评论
下一页