美文网首页Nosql
八、redis的事务及锁应用

八、redis的事务及锁应用

作者: Dafanzi | 来源:发表于2017-01-08 14:15 被阅读3次

redis事物及锁应用

过程:把命令输入后,就把命令放在队列里
打完exec,再集中执行

redis事物的执行

redis的事物开启multi
redis的语句普通命令
redis的失败取消 discard(所有放在队列中的语句都不执行)
redis成功exec

在mutil后面的语句中,语句出错可能有2种情况

语法错误,exec,直接报错,所以语句都不执行
语法本省没错,但使用对象有问题,exec之后,会执行正确的语句,跳过不正确的语句

思考

我在买票,ticket-1,money-100
而票只有一张,如果再我multi之后,和exec之前,票被别人买了,即ticket变成了0。我该如何观察这种情景,并不再提交。

对key进行检测,只要我设置监听后,一有人改动,我最后的exec就不能成功执行

具体的命令 watch命令
watch ticket
multi
decr ticket
decrby money 100
exec
(nil)返回nil,说明监视的ticket已经被改变了,事物就取消了
watch key1 key2 ……keyn
作用:监听key1 key2 keyn有没有变化,只要其中一个有变化,则事物取消(所有影响都失效)

unwatch

作用:取消所有的watch监听

相关文章

  • 知识点整理

    redis redis为什么高效,及应用场景 锁 死锁产生条件,及避免死锁 悲观锁与乐观锁 数据库 事务 事务特性...

  • 八、redis的事务及锁应用

    redis事物及锁应用 过程:把命令输入后,就把命令放在队列里打完exec,再集中执行 redis事物的执行 re...

  • Redis学习笔记(二)

    一、redis事物及锁应用 MULTI、EXEC、DISCARD和WATCH命令是Redis事务功能的基础。Red...

  • redis主从、事务与锁、持久化

    分布式缓存技术redis学习系列(三)——redis高级应用(主从、事务与锁、持久化)

  • Redis缓存总结

    Redis 原理及应用(1)--数据类型及底层实现方式redis学习(八)——redis应用场景 --不错哦 Re...

  • redis相关

    导读 redis的工作模型和常用数据结构 redis的持久化及数据淘汰机制 redis的应用场景及应对措施分布式锁...

  • Redis事务锁CAS实现以及深入误区

    Redis中的事务 Redis的事务没有mysql那么的丰富,但在JAVA web的开发过程中利用mysql事务锁...

  • Redis应用-布隆过滤器

    系列文章Redis应用-分布式锁Redis应用-异步消息队列与延时队列Redis应用-位图Redis应用-Hype...

  • Redis应用-Geo

    系列文章Redis应用-分布式锁Redis应用-异步消息队列与延时队列Redis应用-位图Redis应用-Hype...

  • 八、Redis_事务_锁机制

    1、redis的事务定义 Redis事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行...

网友评论

    本文标题:八、redis的事务及锁应用

    本文链接:https://www.haomeiwen.com/subject/xjbqbttx.html