【并发控制】并发控制与分布式锁(redis/zookeeper)实现【图文教程】_ 第4章

平凡也就两个字: 懒和惰;
成功也就两个字: 苦和勤;
优秀也就两个字: 你和我。
跟着我从0学习JAVA、spring全家桶和linux运维等知识,带你从懵懂少年走向人生巅峰,迎娶白富美!
关注微信公众号【 IT特靠谱 】,每一篇文章都是心得总结,跟我学习你就是大牛!

 

并发控制与分布式锁(redis/zookeeper)实现【图文教程】_第4章

---redis分布式锁实现并发控制

温馨提示:

      (1)redis锁不仅适用于单机服务,也适用于集群分布式系统的并发控制。同zookeeper分布式锁。

      (2)生产环境中一般用redission框架来实现redis分布式锁(redission功能很强大),而基本上不会用redis client客户端方式来实现redis分布式锁。但是本文为了能让基础薄弱的同学深入理解redis分布式锁的原理,因此通过redis client来实现分布式锁。

1. 引入jar包

      需要用到操作redis的客户端工具jedis,因此引入以下jar包

<!-- jedis:redis的客户端 -->
<dependency>
    <groupId>redis.clients</groupId>
    <artifactId>jedis</artifactId>
    <version>2.9.0</version>
</dependency>

2 实现redis分布式锁

      定义redis锁类:RedisLock.java

      测试方法:main()

3 总结

      前面几章节介绍了实现并发控制的集中方式,因此小结一下:

(1)单实例服务的并发控制只能通过synchronized和ReentrantLock同步锁或乐观锁来实现;数据库层面的乐观锁一般通过version版本来实现,内存变量层面的乐观锁一般通过CAS方式来实现

(2)redis和zookeeper分布式锁使用于分布式系统(集群)的并发控制;

(3)redis的分布式锁的效率要高于zookeeper的分布式锁,因为redis是内存数据库,速度更快。

      下一章节将详细介绍redission框架!  请输入【IT特靠谱】或扫描下面微信公众号关注后查看~

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT_Most

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值