一、有多少组件
mysql 、kafka、redis 、zookpeer、 nginx、ES
二、各大组件高可用模式
主从模式 哨兵模式 集群模式
三、各大组件的负载均衡技术
四、分布式事务、缓存、锁、选举,以及分片
1、事物解决方案
2、实现Seata框架
XA 模式:强一致性的两阶段提交协议,需要数据库支持XA接口,牺牲了一定的可用性,无业务侵入²。
AT 模式:最终一致性的两阶段提交协议,通过自动补偿机制实现数据回滚,无业务侵入,也是Seata的默认模式¹。
TCC 模式:最终一致性的两阶段提交协议,需要业务实现Try、Confirm和Cancel三个操作,有业务侵入,灵活度高¹。
SAGA 模式:长事务模式,通过状态机编排或者注解方式实现业务逻辑,需要业务实现正向和反向两个操作,有业务侵入¹。
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/64287fc9da944f98a3fa35bf66f7ab00.png