开发者学堂课程【Java面试疑难点串讲5:系统架构及项目设计:分布式锁现实】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/28
分布式锁现实
阿里云开发者学院
1、分布式锁:
分布式锁是控制分布式系统之间同步访问共享资源的一种方式。
在分布式系统中,常常需要协调他们的动作。
如果不同的系统或是同一个系统的不同主机之间共享了一个或一组资源,那么访问这些资源的时候,往往需要互斥来防止彼此干扰来保证一致性。这个时候,便需要使用到分布式锁。
所谓的分布式锁指的是在高并发访问的情况下使用的一种技术,所谓的高并发指的是多个线程对象(每一个操作用户)为了保证资源得操作完整性,而实现的一种技术,这样的技术可以简单地理解为锁。
如果多个线程在同一个虚拟机之中,正常编写一个程序,而后这个程序里面产生了若干个线程,并且这些线程要操作同一资源。在这样的情况下,为了保证操资源操作的同步,最简单的模式就是采用eynchronized关键字来完成。
但是这样的做法只适用于单JVM运行情况下,而如果说现在划分到网络上。
2、举例:单JVM锁
但是如果是多虚拟机的状态下,这样的设计就必须做出更改。
所以说这分布式锁是非常复杂的整个过程实现依据也是非常难的。