分布式锁
分布式锁一般有三种实现方式
1 基于数据库实现分布式锁
2 基于Redis实现分布式锁
3 基于zookeeper实现分布式锁
什么是分布式锁
线程间并发问题和进程间并发问题都是可以通过分布式锁解决的,但是不建议这样做,因为采用分布式锁解决这些小问题都是非常浪费资源的! 分布式锁应该用来解决分布式情况下多线程并发问题才是最合适的。
当线程A和线程B都共享某个变量X
如果是单机情况下(单jvm),线程之间共享内存,只要使用线程锁就可以解决并发问题。
如果是分布式情况下(多jvm),线程A和线程B很可能不是在同一个jvm中,这样线程锁就无法起到作用了,这时候就需要用到跟不是锁来解决。