Redis--事务
2017-06-15 11:26
148 查看
一、事务
Redis 事务可以一次执行多个命令, 并且带有以下两个重要的保证:
事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。
事务是一个原子操作:事务中的命令要么全部被执行,要么全部都不执行。
一个事务从开始到执行会经历以下三个阶段:
开始事务。
命令入队。
执行事务。
二、命令
1、Multi 命令
Multi 命令用于标记一个事务块的开始。
事务块内的多条命令会按照先后顺序被放进一个队列当中,最后由 EXEC 命令原子性(atomic)地执行
返回OK
2、Exec 命令
Exec 命令用于执行所有事务块内的命令。
事务块内所有命令的返回值,按命令执行的先后顺序排列。 当操作被打断时,返回空值 nil 。
3、Discard 命令
Discard 命令用于取消事务,放弃执行事务块内的所有命令
总是返回 OK 。
4、Watch 命令
Watch 命令用于监视一个(或多个) key ,如果在事务执行之前这个(或这些) key 被其他命令所改动,那么事务将被打断。
总是返回 OK
5、Unwatch 命令
Unwatch 命令用于取消 WATCH 命令对所有 key 的监视。
总是返回 OK 。
Redis 事务可以一次执行多个命令, 并且带有以下两个重要的保证:
事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。
事务是一个原子操作:事务中的命令要么全部被执行,要么全部都不执行。
一个事务从开始到执行会经历以下三个阶段:
开始事务。
命令入队。
执行事务。
二、命令
1、Multi 命令
Multi 命令用于标记一个事务块的开始。
事务块内的多条命令会按照先后顺序被放进一个队列当中,最后由 EXEC 命令原子性(atomic)地执行
返回OK
2、Exec 命令
Exec 命令用于执行所有事务块内的命令。
事务块内所有命令的返回值,按命令执行的先后顺序排列。 当操作被打断时,返回空值 nil 。
3、Discard 命令
Discard 命令用于取消事务,放弃执行事务块内的所有命令
总是返回 OK 。
4、Watch 命令
Watch 命令用于监视一个(或多个) key ,如果在事务执行之前这个(或这些) key 被其他命令所改动,那么事务将被打断。
总是返回 OK
5、Unwatch 命令
Unwatch 命令用于取消 WATCH 命令对所有 key 的监视。
总是返回 OK 。
相关文章推荐
- Redis事务的应用
- redis -- 事务
- Redis 事务相关
- redis的高级事务CAS(乐观锁)
- Redis的事务功能详解
- Redis 事务
- redis 事务
- Redis 之 事务
- Redis的Java客户端Jedis的八种调用方式(事务、管道、分布式)介绍
- Redis事务使用总结
- Redis 事务 命令
- (十二)redis 事务(transaction)
- Redis入门系列之事务
- Redis事务的分析及改进
- Redis lesson13 Redis的事务机制
- Redis的Java客户端Jedis的八种调用方式(事务、管道、分布式…)介绍
- Redis 事务
- redis-事务-transaction
- Spring-data-redis: 事务与pipeline
- Redis的事务(部分支持)