Redis(七)----Redis的订阅和事务

一、redis订阅

subscribe channel:订阅频道,例:subscribe mychat,订阅mychat这个频道

psubscribe channel*:批量订阅频道,例:psubscribe s*,订阅以"s"开头的频道

publish channel content:在指定的频道中发布消息,如publish mychat 'today is a newday'

步骤1:在第一个连接中,订阅mychat频道。此时如果没有人“发布”消息,当前窗口处于等待状态。

Redis(七)----Redis的订阅和事务

步骤2:在另一个窗口中,在mychat频道中,发布消息

Redis(七)----Redis的订阅和事务

第一个窗口收到消息:

Redis(七)----Redis的订阅和事务

步骤3:在第三个窗口,批量订阅以my开头的所有频道

Redis(七)----Redis的订阅和事务

步骤4:在第二个窗口,分别在“mychat”和“mychat2”发布消息

Redis(七)----Redis的订阅和事务

二、redis事务

multi:开启事务用于标记事务的开始,其后执行的命令都将被存入命令队列,直到执行exec时,这些命令才会被原子的执行,类似于关系型数据库中的:begin transaction

exec:提交事务,类似于commit

discard:事务回滚,类似于rollback

事务演示

Redis(七)----Redis的订阅和事务

回滚演示

Redis(七)----Redis的订阅和事务