首页 > 试题广场 >

介绍一下Redis的事务。

使用Multi或Exec命令组合多个操作按照顺序执行。
发表于 2025-07-06 23:39:34 回复(0)
通过MULTI和EXEC组合实现事务,DISCARD取消事务 WATCH实现乐观锁,UNWATCH关闭乐观锁 对于指令错误可实现原子化操作,对于运行错误不可实现原子化操作 不可回滚 顺序执行
发表于 2025-09-02 10:45:38 回复(0)
redis的事务通过MULTI、EXEC、DISCARD等命令组合使用,将多个命令按照顺序执行
1.MULTI:开启事务,后续执行的命令不会马上执行,暂时存进队列
2.EXEC:提交事务,依次执行队列中的命令
3.DISCARD:取消事务
1.redis的事务不能保证完全原子性:MULTI执行后存进队列的命令出现语法错误整个事务会被拒绝,出现运行时异常(例如对String类型使用HGET命令)不会导致事务失败,事务部分执行
2.redis的事务不支持回滚
redis事务如何防止key被其它并发请求修改?
搭配WATCH命令使用,在MULTI执行之前对事务中需要修改的key进行WATCH,WATCH可以实现类似乐观锁(CAS)功能,事务提交的时候比较key是否被修改,没有被修改就正常提交事务,否则中断事务
发表于 2025-08-05 21:56:42 回复(0)
Redis事务通过MULTI、EXEC命令组合多个操作按顺序执行,保证原子性(整体执行但不支持回滚)。若命令入队时出现语法错误,整个事务会被拒绝;运行时错误不影响其他命令执行。支持WATCH命令实现乐观锁机制,监视键值变化时自动中断事务,适用于并发控制场景。
发表于 2025-06-06 17:00:36 回复(0)
事务通过Multy、EXEC命令组合多个操作按顺序执行,保证原子性(但不支持回滚)。若命令入队时出现语法错误,整个事务会被拒绝;运行时错误不影响其他命令的执行
发表于 2025-05-23 19:57:27 回复(0)