七种分布式事务解决方案
七种分布式事务解决方案
事务的概念
事务是指一组操作被视为一个单独的工作单元,这些操作要么全部成功提交,要么全部失败回滚。
事务的特性
- 原子性 事务是一个不可分割的工作单元,要么全部成功,要么全部失败
- 一致性 事务执行前后,数据库的完整性没有被破坏,保证数据的正确性
- 隔离性 多个事务并行执行时,一个事务的执行不会影响到其他业务
- 持久性 事务一旦提交,执行结果就是永久性 的,即使系统故障也不会丢失。
分布式事务
分布式事务是指跨越多个计算机节点的事务,由不同的应用程序或者不同的数据库系统管理。
分布式理论
CAP理论是指在分布式系统中,一致性。可用性。分区容错性这三个特性不可能同时满足。
C 一致性:一致性是指写操作后的读操作可以读到最新的数据状态,当数据分布在多个节点上,从任意节点读取到的数据都是最新的状态。
A 可用性:可用性是指任何事物操作都可以得到响应结果并且不会出现响应超时或者相应错误的情况发生,(指数据)
P 分区容错性:分区容错性是指通常分布式系统各个节点部署在不同的子网上,不可避免会出现由于网络问题导致节点之间的通信失败,但此时系统仍可对外提供服务。 (指整个系统)
CP 满足一致性、分区容错性,对性能要求低。必须所有的节点都存储到了,才返回。zk
AP 满足可用性、分区容错性的系统,对一致性要求低。Eureka
Base理论
Base理论是基本可用、软状态、最终一致性的缩写,是对CAP理论中一致性C和可用性A权衡后的结果
BA:基本可用(Basically Avaiable)
基本可用是指系统能够保证基本的可用性,即系统能够在故障发生时允许部分可用性损失,保证核心服务或者链路是可用的。
S:软状态(Soft State)
软状态是指系统中的状态可以在一段时间内不同步,即系统中的状态不需要实时同步。
E:最终一致性
最终一致性是指系统中的所有节点最终会达到一致的状态,但是在某个时间段可能会出现不一致的情况。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了