redis学习教程三《发送订阅、事务、连接》

redis学习教程三《发送订阅、事务、连接》

一:发送订阅
      Redis发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。Redis 发布订阅(pub/sub)实现了消
息系统,发送者(在redis术语中称为发布者)在接收者(订阅者)接收消息时发送消息。传送消息的链路称为信道。

示例

以下示例说明了发布用户概念的工作原理。 在以下示例中,一个客户端订阅名为“redisChat”的信道。

redis 127.0.0.1:6379> SUBSCRIBE redisChat
Reading messages... (press Ctrl-C to quit) 
1) "subscribe" 
2) "redisChat" 
3) (integer) 1

Shell

现在,两个客户端在名称为“redisChat”的相同信道上发布消息,并且上述订阅的客户端接收消息。

redis 127.0.0.1:6379> PUBLISH redisChat "Redis is a great caching technique" 
 (integer) 1 
 redis 127.0.0.1:6379> PUBLISH redisChat "Learn redis by yiibai" 
 (integer) 1 
1) "message" 
2) "redisChat" 
3) "Redis is a great caching technique" 
1) "message"
2) "redisChat" 
3) "Learn redis by yiibai"

Shell

Redis发布订阅命令

下表列出了与Redis发布订阅相关的一些基本命令。

序号 命令 说明
1 PSUBSCRIBE pattern [pattern …] 订阅一个或多个符合给定模式的频道。
2 PUBSUB subcommand [argument [argument …]] 查看订阅与发布系统状态。
3 PUBLISH channel message 将信息发送到指定的频道。
4 PUNSUBSCRIBE [pattern [pattern …]] 退订所有给定模式的频道。
5 SUBSCRIBE channel [channel …] 订阅给定的一个或多个频道的信息。
6 UNSUBSCRIBE [channel [channel …]] 退订给定的频道。

二:事务
       Redis事务允许在单个步骤中执行一组命令。以下是事务的两个属性:

  • 事务中的所有命令作为单个隔离操作并按顺序执行。不可以在执行Redis事务的中间向另一个客户端发出的请求。
  • Redis事务也是原子的。原子意味着要么处理所有命令,要么都不处理。

语法示例

Redis事务由命令MULTI命令启动,然后需要传递一个应该在事务中执行的命令列表,然后整个事务由EXEC命令执行。

示例

以下示例说明了如何启动和执行Redis事务。
redis 127.0.0.1:6379> MULTI

OK 
redis 127.0.0.1:6379> SET mykey "redis"
QUEUED 
redis 127.0.0.1:6379> GET mykey
QUEUED 
redis 127.0.0.1:6379> INCR visitors
QUEUED 
redis 127.0.0.1:6379> EXEC
1) OK 
2) "redis" 
3) (integer) 1

Shell

Redis事务命令

下表列出了与Redis事务相关的一些基本命令。

序号 命令 说明
1 DISCARD 丢弃在MULTI之后发出的所有命令
2 EXEC 执行MULTI后发出的所有命令
3 MULTI 标记事务块的开始
4 UNWATCH 取消 WATCH 命令对所有 key 的监视。
5 WATCH key [key …] 监视给定的键以确定MULTI / EXEC块的执行

三:Redis连接

Redis中的连接命令基本上是用于管理与Redis服务器的客户端连接。

示例

以下示例说明客户端如何向Redis服务器验证自身,并检查服务器是否正在运行。

redis 127.0.0.1:6379> AUTH "password" 
 OK 
 redis 127.0.0.1:6379> PING 
 PONG

Shell

Redis连接命令

下表列出了与Redis连接相关的一些基本命令。

序号 命令 说明
1 AUTH password 使用给定的密码验证服务器
2 ECHO message 打印给定的字符串信息
3 PING 检查服务器是否正在运行
4 QUIT 关闭当前连接
5 SELECT index 更改当前连接的所选数据库
时间: 2024-11-29 10:07:08

redis学习教程三《发送订阅、事务、连接》的相关文章

redis学习教程五《管道、分区》

redis学习教程五<管道.分区> 一:管道 Redis是一个TCP服务器,支持请求/响应协议. 在Redis中,请求通过以下步骤完成: 客户端向服务器发送查询,并从套接字读取,通常以阻塞的方式,用于服务器响应. 服务器处理命令并将响应发送回客户端. 管道的意义 管道的基本含义是,客户端可以向服务器发送多个请求,而不必等待回复,并最终在一个步骤中读取回复. 示例 要检查Redis管道,只需启动Redis实例,并在终端中键入以下命令. (echo -en "PING\r\n SET t

redis学习教程四《管理、备份、客户端连接》

redis学习教程四<管理.备份.客户端连接> 一:Redis服务器命令 Redis服务器命令 下表列出了与Redis服务器相关的一些基本命令. 序号 命令 说明 1 BGREWRITEAOF 异步重写仅追加的文件 2 BGSAVE 将数据集异步保存到磁盘 3 CLIENT KILL [ip:port] [ID client-id] 杀死或断开指定的客户端的连接 4 CLIENT LIST 获取到服务器的客户端连接列表 5 CLIENT GETNAME 获取当前连接的名称 6 CLIENT P

RabbitMQ学习(三)订阅/发布

RabbitMQ学习(三)订阅/发布 1.RabbitMQ模型 前面所学都只用到了生产者.队列.消费者.如上图所示,其实生产者并不直接将信息传输到队列中,在生产者和队列中间有一个交换机(Exchange),我们之前没有使用到交换机是应为我们没有配置交换机,使用了默认的交换机. 有几个可供选择的交换机类型:直连交换机(direct), 主题交换机(topic), (头交换机)headers和 扇型交换机(fanout) 这里我们使用扇形交换机做一个简单的广播模型:一个生产者和多个消费者接受相同消息

redis学习笔记之发布订阅

发布订阅(pub/sub)是一种消息通信模式,主要的目的是解耦消息发布者和消息订阅者之间的耦合,这点和设计模式中的观察者模式比较相似.pub /sub不仅仅解决发布者和订阅者直接代码级别耦合也解决两者在物理部署上的耦合.redis作为一个pub/sub server,在订阅者和发布者之间起到了消息路由的功能.订阅者可以通过subscribe和psubscribe命令向redis server订阅自己感兴趣的消息类型,redis将消息类型称为通道(channel).当发布者通过publish命令向

C# Redis学习系列三:Redis配置主从

Redis配置主从 主IP :端口      192.168.0.103 6666 从IP:端口       192.168.0.108 3333 配置从库 (1)安装服务: redis-server --service-install --service-name redisService6666 --port 6666 (2)启动进程: redis-server --service-start --service-name redisService6666 (3)连接redis:redis-

ROS与Arduino学习(三)订阅与发布

ROS与Arduino学习(二)订阅与发布 Tutorial Level:HelloWorld Next Tutorial: 本节介绍如何在arduino中发布与订阅消息.他和ROS通过串口进行节点通信. Tips 1 订阅 ros::Subscriber<std_msgs::Empty> sub("WWWW",&hhhhh); 其中WWWW是话题的名称,hhhhh是收到消息后调用的函数函数名称.sub是实例化订阅对象的名字,也可以是别的名字. nh.subscri

redis学习(三)

一.Redis 数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合). 二.Redis 命令 1.Redis 命令用于在 redis 服务上执行操作.要在 redis 服务上执行命令需要一个 redis 客户端.Redis 客户端在我们之前下载的的 redis 的安装包中. 2.Redis 客户端的基本语法为: redis-cli   启动 redis 客户端,打开终端并输入命令 redis-

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

  上文<详细讲解redis数据结构(内存模型)以及常用命令>介绍了redis的数据类型以及常用命令,本文我们来学习下redis的一些高级特性.目录如下: 安全性设置 设置客户端操作秘密 客户端授权方式 主从复制 主从复制的特点 主从复制的过程 配置主从服务器 事务与锁 事务开启与取消 乐观锁 持久化机制 RDB方式 AOF方式 发布以及订阅消息   安全性设置 设置客户端操作秘密 redis安装好后,默认情况下登陆客户端和使用命令操作时不需要密码的.某些情况下,为了安全起见,我们可以设置在客

Redis从零开始学习教程三:key值的有效期

Redis 是一种存储系统,类似数据库,和缓存的差别是,缓存有有效期,而Redis默认无有效期,或者说,默认有效期为永久 但是Redis可以当做缓存使用.这时候需要针对各个key设置有效期. 有效期单位默认为S秒,如果有更加高的精度要求,可以设置为毫秒ms 1:设置失效期命令 expire 失效期: expire age 3600 默认为当前key age 3600秒以后失效. 2:查看key的剩余有效时间 ttl age 3:失效期设置口令,同一个key ,最新一次的设置将覆盖前面的设置时间