当前位置:  开发笔记 > 编程语言 > 正文

redis是否支持原子操作

Redis是一个高性能的key-value数据库,而原子性是一个事务中不可分割的最小工作单位,在Redis中所有单个命令的执行都是原子性的,相互之间不影响。
理论知识:

Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部 分场合可以对关系数据库起到很好的补充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客户端,使用很方便。

原子性(atomicity):一个事务是一个不可分割的最小工作单位,要么都成功要么都失败。

原子操作是指你的一个业务逻辑必须是不可拆分的。

比如你给别人转钱,你的账号扣钱,别人的账号增加钱,这个业务逻辑就是原子性的,这个操作就是原子操作,要么都成功要么都失败。

Redis所有单个命令的执行都是原子性的。

redis 实现事务的原理

1. 批量操作在发送 EXEC 命令前被放入队列缓存

2. 收到 EXEC 命令后进入事务执行,事务中任意命令执行失败,其余的命令都不会被执行

3. 在事务执行过程,其他客户端提交的命令请求不会插入到事务执行命令序列中

以上就是redis是否支持原子操作的详细内容,更多请关注其它相关文章!

推荐阅读
手机用户2502852037
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有