NoSql-Redis入门(事务)

定义

Redis 事务可以一次执行多个命令, 并且带有以下两个重要的保证:
1.事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。
2.事务是一个原子操作:事务中的命令要么全部被执行,要么全部都不执行。

一个事务从开始到执行会经历以下三个阶段:

1.开始事务。
2.命令入队。
3.执行事务。

for example
以下是一个事务的例子, 它先以 multi 开始一个事务, 然后将多个命令入队到事务中, 最后由 exec 命令触发事务, 一并执行事务中的所有命令:

127.0.0.1:6379> multi
OK
127.0.0.1:6379> set username 张晓
QUEUED
127.0.0.1:6379> get username
QUEUED
127.0.0.1:6379> sadd persons-info 张咪 张冲 张明
QUEUED
127.0.0.1:6379> smembers persons-info
QUEUED
127.0.0.1:6379> exec
OK
张晓
3
张明
张咪
张冲
127.0.0.1:6379>

没啥可说的,大家都看的懂,多熟悉命令。
惟一觉得有用的东西就是Redis中对事务中一系列操作命令的队列式存储。以及事务执行的四大约束原则,也算是特性:原子性、完整性、隔离性、持久性 ,也就是ACID。

还有一点,我在学习发布订阅的时候发现如果发布的信息是中文的话,在subscribe端接收的信息是乱码,这个可以在打开客户端的时候使用./redis-cli --raw避免

博客搬家:大坤的个人博客
欢迎评论哦~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Redis 通过 MULTI 、 DISCARD 、 EXEC 和 WATCH 四个命令来实现事务功能, 本章首先...
    binge1024阅读 528评论 0 2
  • redis事务 Redis 通过 MULTI 、 DISCARD 、 EXEC 和 WATCH 四个命令来实现事务...
    全能程序猿阅读 2,187评论 0 11
  • 孩儿立志出乡关,学不成名誓不还。每当读到她都会满腹心酸,湿了衣衫。想当初,我也是这样满怀希望,信誓旦旦的对爸爸妈妈...
    淇畔芷影阅读 408评论 0 6
  • 刘润老师对自己的写作的解密。 核心思想就是用听着的逻辑讲述,而不是用讲者的逻辑讲述。 分开了是三部分,首先是价值观...
    四横阅读 706评论 0 0