Redis事务

                                                                                                                            Redis事务

1.Redis事务介绍

Redis的事务是通过MULTI,EXEC,DISCARO和WATCH这四个命令来完成的。

Redis的单个命令都是原子性的,所以这里确保事务性的对象是个命令集合。

Redis将命令集合序列化并确保处于同一事务的命令集合连续且不被打断的执行。

Redis不支持事务回滚。

1.1.大多数事务失败是因为语法错误或者类型错误,这两种错误,在开发阶段都是可以预见的。

1.2.redis为了性能方面就忽略了事务回滚。

2.相关命令

2.1MULTI

用于标记事务块的开始。Redis会将后续的命令逐个放入队列中,然后才能使用EXEC

命令原子化地执行这个命令序列 

语法:multi

 

2.2EXEC

在一个事务中执行所有先前放入对列的命令,然后恢复正常的链接状态

语法:exec

2.3DISCARD

清除所有先前在一个事务中放入队列的命令,然后恢复正常的链接转态。

语法:discard

2.4WATCH

当某个事务需要按条件执行时,就要使用这个命令将给定的键设置为监控的

语法:watch key 【key...】

注意事项:使用该命令可以实现redis的乐观锁

2.5UNWATCH

清除所有先前为一个事务监控的键

3.事务失败处理

3.1Redis语法错误(可以理解为编译期错误)

3.2Redis类型错误(可以理解为运行期错误)

 

 

posted @ 2020-01-30 20:47  小李Supreme  阅读(118)  评论(0编辑  收藏  举报