IOT消费流程图
2021-04-10 23:17:30 0 举报
在线,离线并发扣费保证消费最终一致性
作者其他创作
大纲/内容
扣减积分
离线消费
扣款金额现金:XX元补贴:XX元
1、锁单2、获取配置信息3、数据解密4、基础信息校验缓存redis获取配置
扣费成功
内部会员
响应结果
店铺配置信息验证
记录原因
数据解密
锁定账户
预构思:此模块需详细设计,设计到锁
终端设备
会员服务
重复扣费
在线,离线消费防止订单重复提交防止数据丢失在线消费必须,实时返回结果消息队列开启手动确认1、订单加锁;2、人员加锁3、离线订单进入消息队列rabbitmq 集群 消费卡表,消费订单,消费详情4、redis 做集群操作,主从节点
账户锁
重新获取
记录入库
根据单号生成账户扣费记录或存放入redis
扣减优惠券
其他业务
添加扣费记录
下单
扣减库存
数据库消费
等待3s或重新投递
MQ普通消息队列
消费失败,重新投递消息
消费失败和异常数据
。。。。。
消费成功
网关
解锁账户余额
扣费
成功
扣款方式社会餐饮团餐
执行
更新账户余额
缓存获取解密配置信息
消费前投递,延迟消息
单号是否已存在
投递普通消息
订单号加锁
消费消息队列
获取
更新会员账户
消息投递超过3次仍然失败,转人工处理
返回扣费结果
扣费结果
在线消费
会员账户扣费
MQ消费离线扣费逻辑
发起支付
消费服务
获取锁成功
入库消费记录
数据库会员
发送消费通知
消费
返回扣费结果失败
根据会员扣费接口,扣费成功后的订单号进行消费处理
转发
会员信息校验
投递消息之前,存在失败或异常则结算订单
数据库
转人工处理使用
在线消费逻辑
消费消息
发起扣费
监控平台
失败
0 条评论
下一页