我是靠谱客的博主 喜悦小丸子,最近开发中收集的这篇文章主要介绍订单系统设计 —— 数据一致性一、方案背景二、技术方案,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

文章目录

  • 一、方案背景
  • 二、技术方案
    • 2.1 全异步方案
      • 方式一:事务消息
      • 方式二:Binlog消息
    • 2.2 全同步方案
      • 方式一:AT模式
      • 方式二:TCC模式
    • 2.3 混合方案

一、方案背景

  订单系统是每个公司最核心的业务系统,订单逻辑执行过程中会和多个业务系统交互,如何保障订单系统和其它业务系统数据的一致性是订单系统的核心问题,数据的不一致性可能导致业务无法正常流转,甚至产生资损。

二、技术方案

2.1 全异步方案

适用场景: 资源充足、不需要实时得到反馈的场景;

方式一:事务消息

在这里插入图片描述

方式二:Binlog消息

在这里插入图片描述

2.2 全同步方案

适用场景: 需要进行资源校验,实时得到反馈的场景;

方式一:AT模式

  AT模式对业务无入侵,适用于对性能要求不高的场景;
在这里插入图片描述

方式二:TCC模式

  TCC模式对业务存在入侵,适用于对性能要求高,需要灵活定制的的场景;
在这里插入图片描述

2.3 混合方案

  将业务逻辑分成同步和异步两大类,先按照同步的方案执行,然后再通过消息实现最终一致性;

参考:

  1. 分布式事务理论与实践

最后

以上就是喜悦小丸子为你收集整理的订单系统设计 —— 数据一致性一、方案背景二、技术方案的全部内容,希望文章能够帮你解决订单系统设计 —— 数据一致性一、方案背景二、技术方案所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(77)

评论列表共有 0 条评论

立即
投稿
返回
顶部