redis事务操作

模拟用户金额操作 原子性 


127.0.0.1:6379> mset zhang 500 weiyeying 300     //初始化 金额

127.0.0.1:6379> multi   //开启事务

127.0.0.1:6379> decrby zhang 100   //操作数据减少100

127.0.0.1:6379> incrby weiyeying 100 //操作数据增加100

127.0.0.1:6379> exec  //执行事务

127.0.0.1:6379> mget zhang weiyeying

1) "400"

2) "400"


模拟取消事务回滚
127.0.0.1:6379> mset zhao 1000 wang 500
127.0.0.1:6379> multi  //开启事务
127.0.0.1:6379> decrby zhao 100 //操作数据减少100
127.0.0.1:6379> incrby wang 100 //操作数据增加100
127.0.0.1:6379> discard //取消

127.0.0.1:6379> mget zhao wang


乐观锁
127.0.0.1:6379> mset zhao 1000 wang 500
127.0.0.1:6379> watch zhao wang //监控zhao wang的金额 如果有变化事务提交失败
127.0.0.1:6379> multi  //开启事务
127.0.0.1:6379> decrby zhao 100 //操作数据减少100
127.0.0.1:6379> incrby wang 100 //操作数据增加100
127.0.0.1:6379> exec  //执行事务

127.0.0.1:6379>unwatch //也可以取消监视



取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论