关于分布式系统(分布式锁,分布式数据库集群,分布式事务)

1在分布式系统下(单机synchronzied,lock无法实现分布式锁),如何实现加锁:采用缓存如redis等实现加锁,或者采用数据库乐观锁(如何避免redis宕机导致锁失效?)

2数据库集群:多个读库,一个写库。(mycat实现读写分离)高可用mha ,pxc

3分布式事务(mq,seata,gts,lcn,saga)

 

2PC 请求提交prepareCommit,提交doCommit,简单粗暴,同步阻塞,强一致性

3PC 预提交(try),请求提交(prepareCommit),doCommit (可以超时提交,最终一致性)

 

分布式事务有多种主流形态,包括:

  • 基于消息实现的分布式事务
  • 基于补偿实现的分布式事务
  • 基于TCC实现的分布式事务(3PC):(try 接口,comfirm 接口,cancel接口)预约事务,预先扣下押金,等执行完成,实现支付,失败返回押金。
  • 基于SAGA实现的分布式事务
  • 基于2PC实现的分布式事务:协调员发起执行请求,参与者反馈是否可以执行,线程挂起,等待协调通知的时候统一提交或者回滚,如果全部可以执行,协调员发送提交指令,如果有一个参与者不能执行,协调员发送取消指令。(同步阻塞问题)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值