什么是分布式事务?
分布式架构,服务与服务之间调用产生的事务问题
什么是CAP定理?
Consistency(一致性)
用户访问分布式系统中的任意节点,得到的数据必须一致
Availability(可用性)
用户访问集群中的任意健康节点,必须能得到响应,而不是超时或拒绝。
Partition tolerance (分区容错性)
因为网络故障或其它原因导致分布式系统中的部分节点与其它节点失去连接,
形成独立分区,依旧能够提供服务
什么是BSE理论?
是对CAP的一种落地方案
Basically Available (基本可用):
分布式系统在出现故障时,允许损失部分可用性,即保证核心可用。
Soft State(软状态):
在一定时间内,允许出现中间状态,比如临时的不一致状态。
Eventually Consistent(最终一致性):
虽然无法保证强一致性,但是在软状态结束后,最终达到数据一致。
常见的分布式事务解决方案?
Seata的架构
XA模式:强一致性分阶段事务模式,牺牲了一定的可用性,无业务侵入
AT模式★:最终一致的分阶段事务模式,无业务侵入,也是Seata的默认模式
TCC模式:最终一致的分阶段事务模式,有业务侵入
Saga模式:长事务模式,有业务侵入
SeataAT模式基本流程介绍
第一阶段
1)TM发起并注册全局事务到TC
2)TM调用分支事务
3)分支事务准备执行业务SQL
4)RM拦截业务SQL,根据where条件查询原始数据,形成快照。
5)RM执行业务SQL,提交本地事务,释放数据库锁
6)RM报告本地事务状态给TC
第二阶段
1)TM通知TC事务结束
2)TC检查分支事务状态
a)如果都成功,则立即删除快照
b)如果有分支事务失败,需要回滚。读取快照数据,将快照恢复到数据库。
项目中分布式事务场景及解决介绍
项目中存在服务与服务之间的调用,并且操作数据库,即存在分布式事务
引用了seata来解决分布式事务.
阿里云对象存储OSS介绍
阿里云对象存储服务(Object Storage Service,简称OSS)为您提供基于网络的数据存取服务。
使用OSS,您可以通过网络随时存储和调用包括文本、图片、音频和视频等在内的各种非结构化数据文件。
素材上传流程
前端吧图片上传,后台以MultipartFile 对象接收,然后判断图片大小格式,
然后上传到阿里云OSS,上传完成后吧文件名称地址等信息存放到数据中
自动AI实名认证流程
通过云服务接口,在拿到数据的时候进行数据上传,然后使用云服务接口来判断用户信息是否真实