Redis简单实践-Redis事务

为了确保多个操作的原子性,一个成熟的数据库通常都会提供事务支持,Redis中也提供了相应的方法,但是不停与传统数据库,Redis的事务极其简单,同时和传统数据的事务相比也有一定的缺失,Redis 事务可以一次执行多个命令, 并且带有以下三个重要的保证:

  • 批量操作在发送 EXEC 命令前被放入队列缓存。
  • 收到 EXEC 命令后进入事务执行,事务中任意命令执行失败,其余的命令依然被执行。
  • 在事务执行过程,其他客户端提交的命令请求不会插入到事务执行命令序列中。 

尝试使用Redis事务执行一串命令

 

 

上述图片可以看到,在执行exec时,set和get指令才会一起同时执行并返回结果。

下面尝试使用Redis事务执行报错的指令:

 

 可以看到在Redis事务中,单挑指令报错的时候并不会影响其他指令的执行。

Redis还提供了Discard方法,类似于传统数据库中的rollback,可以放弃事务中所有的指令的执行。

 

 从上述可以看到,之前建立的Redis事务中的指令没有执行并且再次调用exec的时候也会提示报错

 

posted @ 2020-04-24 09:56  二十三桥明月夜  阅读(120)  评论(0)    收藏  举报