redis 冒号分隔符含义_细品redis分布式锁

背景

已经写了两节的redis的高性能数据结构了点击查看,今天换个口味,今天我们看一下redis在分布式系统中的应用,使用redis做分布式锁,这可以说是老生常谈的问题了。

redis分布式锁

分布式锁解决的问题

说到锁,第一反应就是线程阻塞,在这里需要注意的是这里的维度会上升一个层次,不单单是一个服务(进程)的线程之间,是多个服务之间的并发安全问题,也可以这么说吧多个进程(这两个进程之间是分别在两个服务上的)之间的并发问题。所以说这里使用线程之间的锁是不能解决问题的如(reentrantLock,Sychronized,CyclicBarrier,CountDownlotch,Semaphore,volatile)这些JUC包和JDK提供的锁机制。他们只能处理同一个进程不同线程之间的并发问题。所以为了解决不同进程,不同server时间的并发安全问题就创造出了redis分布式锁。这里说这么多主要还是区分一下分布式锁和线程锁(这样称呼不知道是否合适,或者说是对象锁)的区别。

根据图理解一下。两个client操作数据库同一条数据进行修改。

c7efa892e56b0d05adea449a0da1de3a.png

实现

  1. 分布式锁的本质就是,不同服务间或同一个服务间的线程在redis里面争抢坑位,当一个线程占用了这个坑位,门一锁&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值