redis原子操作

原子操作来实现并发

为了实现并发访问的正确性,redis提供了两种方法,加锁和原子操作,但是由于加锁会降低redis的性能,所以推荐使用原子操作的方式。

并发访问操作主要是对数据进行修改,分为读取,修改,写回这三步,如果不对其控制,会导致错误。

redis提供了两种方法避免这个问题

单命令操作

由于redis本身是单命令操作的,命令之间是互斥的。所以我们可以把读取,修改,写回,这三个步骤变成一个命令,单命令,再加上redis的互斥,就能保障并发控制了。

比如INCR/DECR

Lua脚本

但是有些命令,没那么简单,需要根据实际需求去调整,这个时候我们可以采用Lua脚本的方式。Redis 会把整个 Lua 脚本作为一个整体执行,在执行的过程中不会被其他命令打断,从而保证了 Lua 脚本中操作的原子性。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值