Seata
2
·
中间件
·
Seata是分布式事务解决方案框架。分布式事务是分布式系统环境下由不同服务通过网络远程协作完成的事务,如用户注册送积分、创建订单减库存、银行转账等。
CAP理论:分布式系统最多只能同时满足一致性(Consistency)、可用性(Availability)和分区容忍性(Partition tolerance)三项中的两项。在具备P的前提下,C和A不能共存。生产中选择包括AP(放弃一致性,保证可用性和分区容忍性,追求最终一致性)、CP(放弃可用性,保证一致性和分区容错性)、CA(放弃分区容忍性,关系型数据库满足CA)。
BASE理论:是对CAP中AP的扩展,通过牺牲强一致性获得可用性。BASE包括基本可用、软状态和最终一致性,满足BASE理论的事务称为柔性事务。基本可用指故障时允许损失部分可用功能但保证核心功能;软状态允许存在中间状态;最终一致指经过一段时间后所有节点数据达到一致。
Seata Server启动需要创建seata数据库,包含global_table(全局会话数据)、branch_table(分支会话数据)、lock_table(锁数据)、distributed_lock(分布式锁)、vgroup_table(事务组)等核心表,然后使用Docker启动seata-server:2.5.0版本。