7.1-分布式核心技术-关于高并发下分布式锁你知道多少
分布式核心技术-关于高并发下分布式锁你知道多少?
简介:分布式锁核心知识介绍和注意事项
背景
就是保证同一时间只有一个客户端可以对共享资源进行操作
案例:优惠券领劵限制张数、商品库存超卖
核心
为了防止分布式系统中的多个进程之间相互干扰,我们需要一种分布式协调技术来对这些进程进行调度
利用互斥机制来控制共享资源的访问,这就是分布式锁要解决的问题
避免共享资源并发操作导致数据问题
加锁
本地锁:synchronize、lock等,锁在当前进程内,集群部署下依旧存在问题
分布式锁:redis、zookeeper等实现,虽然还是锁,但是多个进程共用的锁标记,可以用Redis、Zookeeper、Mysql等都可以
设计分布式锁应该考虑的东西
排他性
在分布式应用集群中,同一个方法在同一时间只能被一台机器上的一个线程执行
容错性
分布式锁一定能得到释放,比如客户端奔溃或者网络中断
满足可重入、高性能、高可用
注意分布式锁的开销、锁粒度
《小滴课堂-Redis6学习笔记》
网友评论