redis事务

这个问题在学习的时候老是提到,但是老是搞不清楚事务的开启和结束

1.什么是事务

一系列操作组成一个操作单元,要么操作成功,要么操作不成功

事务可以简称为ACID  这些都是英文的简称

A:原子性

C:一致性

I:持久性

D:隔离性

2.事务的并发问题

脏读、幻读、不可重复读

3.隔离级别

(1)读未提交(级别1):级别最低,也最不安全,什么问题都没解决

(2)读已提交(级别2):可避免脏读

(3)可重复读(级别4):解决脏读和不可重复读

(4)串行化(级别8):解决脏读、不可重复读和幻读,但是效率很低

一般默认的是4级别

4.redis事务

(1)MULTI:开启事务

将接下来的操作,放到队列中等待被执行

(2)EXEC:提交事务

一个个被执行

(3)DISCARD:取消事务

全部都不执行

 

执行事务时5种情况

1.正常执行

2.取消事务

3.全体连坐  

   在事务当中,一旦有错误,所有的命令 都不执行:只有语法错误会出现连坐的情况

   冤有头债有主:

       事务当中,多个命令,有一个出现了问题,他就不执行,不影响其他命令

 

4.Watch监控

监控一个键   当这个键开启事务的时候,别人篡改了数据  事务是无效的       

 

5.乐观锁机制:

   他认为在他开启事务的时候,别人都不会修改,当他提交的时候,他就会去检查别人改没改,别人没改就成功,如果别人改了他就失败

 

悲观锁机制:

  硬盘上的数据库就采用的是悲观锁

开启事务的时候,他就认为别人会改我的数据,把数据锁起来,不允许别人修改

 


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值