2016 - 2024

感恩一路有你

锁有哪些种类 什么时候需要分布式锁?

浏览量:2686 时间:2021-03-16 04:11:32 作者:admin

什么时候需要分布式锁?

首先需要知道非分布式环境下,用锁可以解决什么?

多线程环境下,共享资源的线程安全问题!这个时候的共享资源通常是在单机里面的多线程里存在竞争,从JAVA内存模型来看,可以通过锁住对象,锁住方法,锁住代码块等方式,避免共享资源的竞争!



而在分布式环境中,共享资源所要经过的代码,方法,都不是在一个JVM里面,也不是同一个进程!通过锁方法,代码块的方式不能解决共享资源的竞争,需要分布式的锁!

分布式锁通常在以下场景中使用:

1,全局ID的生成;

2,全局配置文件的修改;

3,分布式服务中的秒杀问题;

4,分布式环境下的重复提交



分布式锁通常有以下实现方式:

1,使用数据库的唯一主键来实现锁!

2,使用redis的指令:通常使用setnx方法,incr方法等进行实现

3,使用zookeeper:使用api生成临时节点实现锁!

最近在持续分享JAVA相关技术,有很多干货,敬请关注。。

锁有哪些种类 java中有几种类型的流 java锁的类型有哪些

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。