重点回顾
- 事务提供了一种将多个命令打包,然后一次性、有序地执行的机制。
- 多个命令会被入队到事务队列中,然后按先进先出(FIFO)的顺序执行。
- 事务在执行过程中不会被中断,当事务队列中的所有命令都被执行完毕之后,事务才会结束。
- 带有 WATCH 命令的事务会将客户端和被监视的键在数据库的
watched_keys
字典中进行关联,当键被修改时,程序会将所有监视被修改键的客户端的REDIS_DIRTY_CAS
标志打开。 - 只有在客户端的
REDIS_DIRTY_CAS
标志未被打开时,服务器才会执行客户端提交的事务,否则的话,服务器将拒绝执行客户端提交的事务。 - Redis 的事务总是保证 ACID 中的原子性、一致性和隔离性,当服务器运行在 AOF 持久化模式下,并且
appendfsync
选项的值为always
时,事务也具有耐久性。