分布式锁是一种常用的技术,在高并发场景下,为了避免多个进程或线程同时操作同一资源造成冲突,引入分布式锁机制。本文将介绍分布式锁的原理和使用场景,并通过 Redis、Zookeeper、Redisson 等中间件来实现分布式锁。分布式锁的特性互斥:不同线程之间互斥,只有一个线程能持有锁。超时机制:代码耗时过长,网络原因等,导致锁一直被占用,造成死锁,所以引入超时机制,超过指定时间自动释放锁。完备的锁接口:阻塞的和非阻塞的接口都要有,lock 和 tryLock。可重入性:当前请求的节点 + 线程唯一标识,可以再次获取同一把锁公平性:锁唤醒时候,按照顺序唤醒,不公平的话,有可能出现饥饿现象。分布式...