配色: 字号:
分布式解决分案
2020-11-03 | 阅:  转:  |  分享 
  
分布式解决方案2020-11-03演讲人011.分布式ID1.分布式ID1.数据库自增长序列或字段2.uuid3.snowkeFlake
4.Zookeeper5.MongoDB的ObjectId6.Redis1.利用redis的原子操作INCR和INCRBY
来执行2.可以利用redis的lua脚本执行功能,在每个节点上通过lua脚本生成唯一ID。022.分布式锁优点:简单缺点:1数
据库的可用性和性能将直接影响分布式锁的可用性及性能,所以,数据库需要双机部署、数据同步、主备切换;2、不具备可重入的特性3
、没有锁失效机制;4、不具备阻塞锁特性1.基于数据库实现分布式锁2.基于Redis实现分布式锁原理缺点或者需要解决的问题开
源实现Redisson加锁解锁1.单点故障问题,造成锁状态不同步2.超时后使用del导致误删其他线程的锁3.基于Zookee
per实现分布式锁排他锁共享锁Zookeeper和Redis分布式锁的比较开源实现curatorCurator是Netfl
ix公司开源的一套zookeeper客户端框架033.分布式session3.分布式session1.session复制2.Se
ssionSticky方式管理3.缓存集中式管理使用Redis存放Session基于令牌(Token)方式实现Sessio
n解决方案044.单点登录LOGO4.单点登录登录注销https://www.wps.cn055.分布式事务5.分布式事务两阶
段提交协议CAP定理和BASE理论柔性事务方案分布式事物框架LCN5.分布式事务两阶段提交协议分布式事务两阶段提交,对应技术
上的XA、JTA/JTS。两阶段提交协议分布式事务两阶段提交,对应技术上的XA、JTA/JTS。LOGO5.分布式事务ABCAP
BASECAP定理和BASE理论https://www.wps.cnCAP定理和BASE理论CAPC:Consistency,一
致性,在分布式系统中的所有数据备份,在同一时刻是否同样的值。(等同于所有节点访问同一份最新的数据副本)A:Availability
,可用性,在集群中一部分节点故障后,集群整体是否还能响应客户端的读写请求。(对数据更新具备高可用性)P:Partitiontol
erance,分区容错性,以实际效果而言,分区相当于对通信的时限要求。系统如果不能在时限内达成数据一致性,就意味着发生了分区的情况
,必须就当前操作在C和A之间做出选择。BASELOGO5.分布式事务01基于消息的异步确保性柔性事务方案0302最大努力通知型T
CC补偿型https://www.wps.cn基于消息的异步确保性异步确保型事务(会计记账)(基于可靠消息的最终一致性,可以异步,
但数据绝对不能丢,而且一定要记账成功)示意图TCC补偿型TCC框架原理图失败补偿:重试,记录错误日志最大努力通知型最大努力
通知型事务(商户通知)(按规律进行通知,不保证数据一定能通知成功,但会提供可查询操作接口进行核对)原理图066.分布式任务调度
6.分布式任务调度难点分布式锁,唯一索引分布式任务调度平台XXL-JOB-分布式任务调度平台Elastric-JobTBSc
heduleQuartz077.分布式配置中心7.分布式配置中心Disconf(依赖于zookpeer)7.分布式配置中心diam
ond携程(阿波罗)Apollo和SpringCloudConfig对比7.分布式配置中心xxl-conf7.分布式配置中
心nacos088.网站跨域8.网站跨域099.分布式缓存9.分布式缓存缓存的分类多级缓存热点问题缓存雪崩缓存穿透9.分布式缓存
热点问题热点key缓存更新解决方案事前:1.不同的key,设置不同的过期时间,让缓存失效的时间点尽量均匀事中:2.本地Ehc
ache缓存(二级缓存)+Hystrix限流&降级,避免MySQL崩掉。图片缓存穿透解决方案1.空结果进行缓存2.布隆过滤器感谢聆听
献花(0)
+1
(本文系职场细细品原创)