Redis 教程
- 第1节:Redis 简介
- 第2节:Redis 安装
- 第3节:Redis 配置
- 第4节:Redis 数据类型
- 第5节:Redis 命令
- 第6节:Redis 键(key)
- 第7节:Redis 字符串(String)
- 第8节:Redis 哈希(Hash)
- 第9节:Redis 列表(List)
- 第10节:Redis 集合(Set)
- 第11节:Redis 有序集合(sorted set)
- 第12节:Redis HyperLogLog
- 第13节:Redis 发布订阅
- 第14节:Redis 事务
- 第15节:Redis 脚本
- 第16节:Redis 连接
- 第17节:Redis 服务器
- 第18节:Redis 数据备份与恢复
- 第19节:Redis 安全
- 第20节:Redis 性能测试
- 第21节:Redis 客户端连接
- 第22节:Redis 管道技术
- 第23节:Redis 分区
- 第24节:Java 使用 Redis
- 第25节:PHP 使用 Redis
Redis 事务
Redis 事务可以一次执行多个命令, 并且带有以下两个重要的保证:
- 事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。
- 事务是一个原子操作:事务中的命令要么全部被执行,要么全部都不执行。
一个事务从开始到执行会经历以下三个阶段:
- 开始事务。
- 命令入队。
- 执行事务。
实例
以下是一个事务的例子, 它先以 MULTI 开始一个事务, 然后将多个命令入队到事务中, 最后由 EXEC 命令触发事务, 一并执行事务中的所有命令:
redis 127.0.0.1:6379> MULTI
OK
redis 127.0.0.1:6379> SET book-name "Mastering C++ in 21 days"
QUEUED
redis 127.0.0.1:6379> GET book-name
QUEUED
redis 127.0.0.1:6379> SADD tag "C++" "Programming" "Mastering Series"
QUEUED
redis 127.0.0.1:6379> SMEMBERS tag
QUEUED
redis 127.0.0.1:6379> EXEC
1) OK
2) "Mastering C++ in 21 days"
3) (integer) 3
4) 1) "Mastering Series"
2) "C++"
3) "Programming"
Redis 事务命令
下表列出了 redis 事务的相关命令: