Redis-04-redis的消息发布及订阅

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
简介: Redis 提供了消息的发布与订阅功能,发布订阅 (pub/sub) 是一种消息通信模式:发送者 (pub) 发送消息,订阅者 (sub) 接收消息。Redis 客户端可以订阅任意数量的频道,支持多个频道订阅。

Redis 提供了消息的发布与订阅功能,发布订阅 (pub/sub) 是一种消息通信模式:发送者 (pub) 发送消息,订阅者 (sub) 接收消息。

Redis 客户端可以订阅任意数量的频道,支持多个频道订阅。

一、简单的一次发布与订阅

1.创建订阅频道名为 xinghua:

127.0.0.1:6379>SUBSCRIBExinghuaReadingmessages... (pressCtrl-Ctoquit)
1) "subscribe"2) "xinghua"3) (integer) 12.另起一个redis-cli:127.0.0.1:6379>PUBLISHxinghua123(integer) 1

可以看到在第一个redis-cli客户端显示出了信息:

127.0.0.1:6379>SUBSCRIBExinghuaReadingmessages... (pressCtrl-Ctoquit)
1) "subscribe"2) "xinghua"3) (integer) 11) "message"2) "xinghua"3) "123"

再来一次:

D:\redis>redis-cli127.0.0.1:6379>PUBLISHxinghua123(integer) 1127.0.0.1:6379>PUBLISHxinghua123456(integer) 1127.0.0.1:6379>

显示了:

image.png


二、试试同时订阅监听两个发布

127.0.0.1:6379>psubscribexinghuaxinghua1Readingmessages... (pressCtrl-Ctoquit)
1) "psubscribe"2) "xinghua"3) (integer) 11) "psubscribe"2) "xinghua1"3) (integer) 2127.0.0.1:6379>PUBLISHxinghua123456(integer) 1D:\redis>redis-cli127.0.0.1:6379>publishxinghua1444(integer) 1

ok,显示:

image.png


三、退订频道

127.0.0.1:6379>punsubscribexinghua1) "punsubscribe"2) "xinghua"3) (integer) 0127.0.0.1:6379>127.0.0.1:6379>unsubscribexinghua1) "unsubscribe"2) "xinghua"3) (integer) 0


总结:

       psubscribe 订阅一或多个频道,然后publish发布到这个频道消息,就可以实时监听到该消息。



END

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
5月前
|
NoSQL Redis
【Redis】Redis的发布和订阅
【1月更文挑战第18天】【Redis】Redis的发布和订阅
|
11月前
|
消息中间件 NoSQL Kafka
【Redis 系列】redis 学习九,Redis 的发布和订阅是咋玩的
【Redis 系列】redis 学习九,Redis 的发布和订阅是咋玩的
|
5月前
|
消息中间件 NoSQL PHP
Laravel实现redis发布-订阅
Laravel实现redis发布-订阅
61 0
|
12月前
|
存储 NoSQL Redis
【Redis源码】发布与订阅(六)
【Redis源码】发布与订阅(六)
64 0
|
5月前
|
NoSQL 安全 Unix
Redis源码、面试指南(4)单机数据库、持久化、通知与订阅(中)
Redis源码、面试指南(4)单机数据库、持久化、通知与订阅
43 0
|
2月前
|
NoSQL Redis
Redis6入门到实战------ 五、Redis的发布和订阅
这篇文章介绍了Redis的发布和订阅机制,包括其基本概念、客户端如何订阅频道以及如何发布消息给订阅者。
|
4月前
|
监控 NoSQL Java
在 Spring Boot 中实现 Redis 的发布/订阅功能可以通过 RedisTemplate 和消息监听器来完成
在 Spring Boot 中实现 Redis 的发布/订阅功能可以通过 RedisTemplate 和消息监听器来完成
162 1
|
5月前
|
存储 缓存 NoSQL
Redis与数据库同步指南:订阅Binlog实现数据一致性
本文由开发者小米分享,探讨分布式系统中的一致性问题,尤其是数据库和Redis一致性。文章介绍了全量缓存策略的优势,如高效读取和稳定性,但也指出其一致性挑战。为解决此问题,提出了通过订阅数据库的Binlog实现数据同步的方法,详细解释了工作原理和步骤,并分析了优缺点。此外,还提到了异步校准方案作为补充,以进一步保证数据一致性。最后,提醒在实际线上环境中需注意日志记录、逐步优化和监控报警。
269 3
|
5月前
|
存储 NoSQL API
Redis源码、面试指南(4)单机数据库、持久化、通知与订阅(上)
Redis源码、面试指南(4)单机数据库、持久化、通知与订阅
52 1
|
5月前
|
存储 NoSQL 调度
Redis源码、面试指南(4)单机数据库、持久化、通知与订阅(下)
Redis源码、面试指南(4)单机数据库、持久化、通知与订阅
38 0
下一篇
无影云桌面