redis高级应用
一、事务
Redis的事务相对不是很完善,下面通过实例来看一下redis事务的问题在哪?
事务正常执行:
事务执行出现问题:
以上实践可以看出redis虽然有事务,但是事务的机制并不完善,这是需要改进的地方。
一旦是数据库就会涉及到并发的问题,一般是使用锁类解决并发问题,锁分为悲观锁和乐观锁。在redis使用事务和watch监听一起达到乐观锁的效果,实例的完成需要开启两个会话。
实例:左侧为session2,右侧为session1
1、Session1添加监听,开启事务
2、session2中对age进行修改
3、session1中添加事务队列,修改age
4、执行事务,获取age的值
在session1中对age添加了监听,在监听后如果age的值被改变session1中对age再次做修改则无法提交。
来源: