浅谈分布式锁
文章目录引言解决方案1. 关系型数据库作为锁2.1 Redis做分布式锁2.2 RedLock安全性争议存在的问题3. Zookeeper与Chubby3.1 Zookeeper3.2 Chubby总结参考
引言
我们知道在单机多线程情况下,如果要保证临界区同一时刻只有一个线程访问,我们的做法就是使得多个线程的临界区在CPU看来串行执行,那么如何做到如上操作呢?两个方法,一个是使用外部组件保证同步,常见的有自旋锁,互斥锁,条件变量,信号量等常见的工具,在一些语言内还支持其他比较有特色的工具,比如golang