redis的事务 - 不保证原子性,保证一定的隔离性
MULTI 开启事务后,命令进入服务端的命令队列,当服务端输入 exec这个指令时,redis逐一执行命令队列的redis命令。
1、MULTI # 开启事务 mysql begin
2、命令1 # 执行命令
3、命令2 ... ...
4、EXEC # 提交到数据库执行 mysql commit
4、DISCARD # 取消事务 mysql 'rollback'
- redis 的流水线 (pipeline ) 功能:批量执行redis命令,减少通信io,此为客户端技术
- 乐观锁 (watch) :事务过程中,可对指定key进行监听,命令提交时,若被监听key对应的值未被修改时,事务方可提交成功,否则失败