架构师的思考+流量漏斗模型驱动解决方案

DBC 1.7K 0
  • 用户注册->发放优惠券
    • RPC调用
      • 分布事务
    • 消息队列
      • 可靠性投递、幂等操作
  • 说下两种方式的优缺点和选择
    • rpc实时性高,强一致性的场景下比消息队列优秀
    • 上下游系统处理能力存在差距的时候消息队列可以很好的缓冲
    • 引入消息队列,系统可用性降低,假如队列宕机则系统就不能正常运行
    • 引入消息队列,系统复杂性增加,考虑多方面的问题,比如一致性问题、如何保证消息不被重复消费,如何保证保证消息可靠传输等
温馨提示

通过前面流量漏斗分析其实多数公司里面,注册的量级不高(排除大量买量和现象级爆款)

直接使用rpc调用即可,不引入消息队列

这里会涉及到分布式事务问题,思考,假如发放优惠券失败应该怎么办?

两个微服务同时进行回滚?
不给注册的账号登录了吗?
你这样会丢掉工作的的,任何方式都不能一刀切,一定要思考下具体场景具体而定
假如RPC方式调用-优惠券发放失败,记录日志就行,可以人工补发或者定时任务重发

前期不用引入相关的微服务组件

发表评论 取消回复
表情 图片 链接 代码

分享