Redis事务+乐观锁概述

Redis事务

Redis事务 :一组命令的集合!顺序执行

一次性、顺序性、排他性

Redis单条命令保证原子性,但是事务不保证原子性!

Redis事务没有隔离级别的概念

redis事务

1.开启事务 multi

2.命令入队

3.执行事务 exec

正常执行事务

放弃事务

discard 里面的命令都不会执行

编译时异常:命令错误

则所有命令都不会执行

运行时异常: 则只有错误的语句失败,其他的成功

乐观锁

悲观锁 : 无论做什么都加锁

乐观锁 :认为什么时候都不会出现问题,所以不会加锁,更新数据时候判断在此期间是否有人修改这个数据

使用watch监视器 可以充当乐观锁(面试常问)

unwatch 取消监视器

如果事务执行失败,先取消锁,再加锁,用最新的值去执行事务 相当于自旋

原文地址:https://www.cnblogs.com/dwwzone/p/13156202.html