文章预览
戳上方蓝字“ Java知音 ”关注我 1、概述 在多线程的环境下,为了保证一个代码块在同一时间只能由一个线程访问,Java中我们一般可以使用 synchronized 语法和 ReentrantLock 去保证,这实际上是本地锁的方式。而在如今分布式架构的热潮下,如何保证不同节点的线程同步执行呢? 实际上,对于分布式场景,我们可以使用分布式锁,分布式锁是用于分布式环境下并发控制的一种机制,用于控制某个资源在同一时刻只能被一个应用所使用。 分布式锁的特点 「互斥性:」 同一时刻只能有一个线程持有锁。 「可重入性:」 同一节点上的同一个线程如果获取了锁之后能够再次获取锁。 「锁超时:」 类似于J.U.C中的锁,支持锁超时,以防止死锁。 「高性能和高可用:」 加锁和解锁需要高效,并且需要保证高可用性,防止分布式锁失效。 「具备阻塞和非
………………………………