Redis系列学习笔记12 事务
来源:互联网 发布:杭州行知小学怎么样 编辑:程序博客网 时间:2024/06/06 15:47
事务
Redis 的事务功能允许用户将多个命令包裹起来,然后一次性地、按顺序地执行被包裹的所有命令。在事务执行的过程中,服务器不会中断事务而改去执行其他命令请求,只有在事务包裹的所有命令都
被执行完毕之后,服务器才会去处理其他命令请求。
MULTI
开始一个事务。在这个命令执行之后,客户端发送的所有针对数据库或者数据库键的命令都不会被立即执行,而是被放入到一个事务队列里面,并返回 QUEUED 表示命令已入队。
DISCARD
取消事务,放弃执行事务队列中的所有命令。
EXEC
按照命令被入队到事务队列中的顺序,执行事务队列中的所有命令。命令的复杂度为队列中所有命令的复杂度之和。命令的返回值是一个列表,列表里包含了事务队列中所有被执行命令的返回值。
乐观锁
使用锁来保证数据的正确性
WATCH key [key …]
如果被监视的键在事务提交之前(也即是 EXEC 命令执行之前), 已经被其他客户端抢先修改了, 那么服务器将拒绝执行客户端提交的事务, 并返回 nil 作为事务的回复。
乐观锁会对被加锁的数据进行监视,多个客户端可以同时尝试对数据进行修改,其中最先尝试的客户端会成功,而之后尝试的客户端则会失败。
悲观锁只让一个客户端对数据进行修改,而其他客户端则需要等待正在进行修改的客户端执行完毕之后,才能尝试获得修改权。
对于频繁进行读写操作的 Redis 来说,使用乐观锁可以避免客户端被阻塞:当一个客户端修改数据失败之后,它只要重试就可以了,这个过程不需要进行任何的等待。
UNWATCH
取消对所有键的监视。
0 0
- Redis系列学习笔记12 事务
- Redis 事务学习笔记
- Redis学习笔记:事务
- [Redis学习笔记]-Redis 事务
- 《Redis源码学习笔记》事务
- Redis学习笔记八、事务
- 【学习笔记】Redis(4)-事务
- Redis学习笔记1 事务
- Redis学习笔记6--Redis事务
- Redis学习笔记6--Redis事务
- Redis学习笔记6--Redis事务
- redis学习笔记5(redis事务)
- redis学习笔记四之事务
- redis学习笔记四之事务
- 四 redis学习笔记之事务
- Redis学习笔记(三)--事务
- redis学习笔记(19)---事务
- 四 redis学习笔记之事务
- Redis系列学习笔记11 流水线
- bootstrap学习之列表
- 免费的最新版本
- J2ME,J2SE和J2EE三者啥区别?
- 如何将ppt转换成pdf格式的文件
- Redis系列学习笔记12 事务
- file_get_contents或者simplexml_load_file时乱码
- 欢迎使用CSDN-markdown编辑器
- RecyclerView 分组管理
- Ubuntu14.04安装编译ffmpeg
- Android媒体库更新问题
- 【React Native】把现代web科技带给移动开发者(一)
- java单例模式深度解析
- 80万用户感染伏地虫病毒 获取root恶意下载、窃隐私盗资金