Redis事务
Redis的事务其实是 开启事务 然后把一条一条的命令加入队列中 然后提交时按顺序执行这些命令,如果出错则撤销事务。
所以Redis的事务就是三步
- 事务开启 (MULTI)
- 命令入队列
- 执行事务(EXEC)或者 撤销事务(DISCARD)
Redis事务没有MySQL、pgSQL等关系型数据库一样的ACID。没有隔离级别,不能保证原子性,也没有执行事务失败会进行回滚操作。 这就会导致前面成功了就成功了,失败的命令就无效,后面的继续进行。因为像事务隔离级别需要加锁、解锁什么的,比较耗性能,这与Redis的快速 高效的特点有着密切关系。