`
backend-develop
  • 浏览: 24541 次
社区版块
存档分类
最新评论

Redis发布订阅使用方法

阅读更多

Redis发布订阅

发布订阅模式中发布消息的为publisher即发布者,接收消息的为subscriber即订阅者。在Redis中,所有的消息通过channel即频道进行发布,一个发布者可以向多个channel发布消息,一个订阅者也可以订阅多个channel。Redis不对消息进行持久化,如果消息发布时订阅者还没有进行订阅,则不会再收到此消息。

 

发布订阅命令

命令 格式 说明
PUBLISH PUBLISH channel message 发布message到指定的channel
SUBSCRIBE SUBSCRIBE channel [channel ...] 订阅1个或多个指定的channel
UNSUBSCRIBE UNSUBSCRIBE [channel [channel ...]] 取消订阅1个或多个指定的channel,如果不指定channel退订所有通过SUBSCRIBE订阅的channel
PSUBSCRIBE PSUBSCRIBE pattern [pattern ...] 根据匹配模式订阅channel
PUNSUBSCRIBE PUNSUBSCRIBE [pattern [pattern ...]] 根据匹配模式取消订阅channel,如果不指定匹配模式退订所有通过PSUBSCRIBE订阅的channel

 

subscribe不能重复订阅同一个channel,而psubscribe按照匹配模式订阅时有可能会多次订阅同一个channel。如果psubscribe多次订阅了同一个channel,发布者使用publish发布消息到此channel后,订阅者会多次收到此消息。

unsubscribe只能退订subscribe订阅的channel,punsubscribe只能退订psubscribe订阅的channel。

 

使用方法

1、订阅指定channel

192.168.1.100:6379> subscribe testchan
Reading messages... (press Ctrl-C to quit)
1) "subscribe" #订阅成功
2) "testchan" #订阅的channel名称
3) (integer) 1 #已订阅的channel个数
 
1) "message" #收到消息
2) "testchan" #消息来源channel
3) "hello" #消息内容
 
192.168.1.100:6379> publish testchan hello
(integer) 1 #收到消息的订阅者的数量

 

 

2、订阅指定匹配模式的channel

192.168.1.100:6379> psubscribe test*
Reading messages... (press Ctrl-C to quit)
1) "psubscribe" #订阅成功
2) "test*" #订阅的channel匹配模式
3) (integer) 1 #已订阅的channel匹配模式个数
 
1) "pmessage" #收到消息
2) "test*" #匹配的订阅模式
3) "testchan" #消息来源channel
4) "hello" #消息内容
 
192.168.1.100:6379> publish testchan hello
(integer) 1 #收到消息的订阅者的数量

 


原文地址:http://caiguoqing.org/post/110
0
0
分享到:
评论

相关推荐

    C# Redis发布订阅Demo

    综上所述,C# Redis发布订阅Demo涵盖了Redis Pub/Sub机制的使用以及Key过期通知的处理。通过这个Demo,开发者可以学习到如何在C#应用中利用Redis进行实时数据通信和监控,这对于构建分布式系统和实时应用非常有价值...

    redis发布订阅小案例

    在这个“redis发布订阅小案例”中,我们将探讨如何使用Java来实现Redis的发布订阅功能。首先,我们需要引入Jedis库,这是Java操作Redis的常用客户端库。确保在项目中已经添加了Jedis的依赖,例如通过Maven或Gradle。...

    基于netcore 3.0的redis发布订阅示例代码

    在本文中,我们将深入探讨如何使用.NET Core 3.0框架与Redis进行发布/订阅(Pub/Sub)通信。Redis是一个高性能的键值存储系统,它提供了丰富的数据结构,如字符串、哈希表、集合和有序集合。在.NET Core 3.0中,我们...

    C# Redis发布与订阅系统源码

    本项目提供了一个基于C#的Redis发布与订阅(Publish/Subscribe)系统的源码,帮助开发者了解如何在Windows Forms(Winform)应用中实现这一功能。 首先,我们需要了解Redis的发布/订阅模式。在这个模式下,发送者...

    Redis发布订阅.net实现

    标题"Redis发布订阅.net实现"所涉及的关键知识点包括: 1. Redis的发布订阅机制: 发布订阅模式在Redis中由`PUBLISH`和`SUBSCRIBE`命令支持。发布者通过`PUBLISH`命令将消息发送到一个特定的频道,而订阅者则通过`...

    Redis 发布订阅 Demo

    **Redis发布订阅模式详解** Redis 是一款高性能的键值存储系统,它支持多种数据结构,如字符串、哈希、列表、集合和有序集合等。在实际应用中,Redis 不仅可以作为缓存服务,还提供了丰富的消息通信机制,其中之一...

    QT实现redis订阅发布功能

    在本文中,我们将深入探讨如何使用Qt框架结合hiredis-1.0.0库来实现Redis的订阅发布功能。Redis是一种高性能的键值存储系统,广泛用于数据缓存、消息队列以及实时数据处理等领域。Qt则是一个跨平台的应用程序开发...

    Java实现Redis的消息订阅和发布

    本篇文章将深入探讨如何使用Java来实现Redis的消息订阅和发布功能,这在分布式系统和实时数据处理中非常关键。 首先,理解Redis的发布/订阅(Pub/Sub)模式是至关重要的。在这一模式下,Redis服务器作为消息的中间...

    可以工作在nginx tcp负载均衡环境中的集群聊天服务器和客户端源码,使用了redis发布订阅消息队列.zip

    可以工作在nginx tcp负载均衡环境中的集群聊天服务器和客户端源码 基于nuduo库实现 使用了redis发布订阅消息队列 数据库采用MySQL 可以工作在nginx tcp负载均衡环境中的集群聊天服务器和客户端源码 基于nuduo库实现 ...

    redis订阅,redis发布

    在 Redis 中,发布/订阅(pub/sub)是一种消息通信模式,允许生产者(发布者)向多个消费者(订阅者)广播消息,而无需直接知道对方的存在。这种模式对于实现实时通知、聊天系统或者构建事件驱动的应用非常有用。 *...

    .net core如何使用Redis发布订阅

    在探讨.NET Core如何使用Redis进行发布订阅之前,首先需要了解Redis发布订阅的基本概念。Redis的发布订阅(pub/sub)是一种消息通信模式,它包括发布者(publisher)和订阅者(subscriber)。发布者负责发布消息,而...

    redis订阅机制简单的使用方法

    redis订阅机制,一方面推送消息,另一方面同时接收消息。

    redis订阅与发布.zip

    综上所述,"redispubandsub订阅预发布.zip" 文件提供了一个使用 C# 实现的 Redis Pub/Sub 示例,可以帮助开发者理解如何在 .NET 环境中利用 Redis 进行实时消息传递,并应用于 SMSForm 和 OrderForm 这样的具体业务...

    基于Java环境下的Redis发布订阅的设计与实现.pdf

    基于Java环境下的Redis发布订阅设计与实现 本文研究了基于Java环境下的Redis发布订阅设计与实现,以满足实时聊天系统、微博以及分布式架构等应用对数据通信中间件的需求。Redis的发布订阅功能可以实现实时通信、...

    redis绑定webSocket发布订阅连接推送

    标题中的“redis绑定webSocket发布订阅连接推送”指的是在Web应用中使用Redis作为消息中间件,结合WebSocket技术来实现实时的数据推送。Redis是一个高性能的键值存储系统,支持多种数据结构,如字符串、哈希、列表、...

    SpringBoot + Redis实现事件的发布订阅功能

    本话题主要探讨如何利用SpringBoot和Redis实现事件的发布订阅功能,这对于实现分布式系统中的异步通信和解耦至关重要。 首先,我们需要理解SpringBoot的核心特性。SpringBoot是Spring框架的一个简化版本,它旨在...

    基于muduo网络库的集群聊天服务器和客户端源码,使用nginx tcp负载均衡,mysql数据库,redis发布-订阅.zip

    基于muduo网络库的集群聊天服务器和客户端源码,使用nginx tcp负载均衡,mysql数据库,redis发布-订阅数据库,redis发布-订阅 基于muduo网络库的集群聊天服务器和客户端源码,使用nginx tcp负载均衡,mysql数据库,...

    Redis发布订阅SignalR即时通讯.rar

    本案例包含redis的发布订阅功能,以及dotnet core+SignalR实现的简单即时通信,并提供文档笔记。本案例初衷是想结合redis的发布订阅功能+websocket实现消息客户端页面订阅指定的消息,并在客户端页面进行显示;

    redis消息订阅发布

    在众多功能中,Redis的消息订阅发布(Pub/Sub)机制是其重要的特性之一,常用于实现轻量级的消息队列和实时通信。 **Redis消息订阅发布机制** 1. **基本概念** - **Publisher(发布者)**:负责发送消息的客户端...

    Redis中使用Java代码的方式实现发布订阅流程-订阅者示例代码.zip

    在这个“Redis中使用Java代码的方式实现发布订阅流程-订阅者示例代码.zip”压缩包中,我们重点关注的是如何用Java客户端操作Redis的订阅功能。以下是一些关于Redis订阅者的关键知识点: 1. **Jedis库**: Java开发者...

Global site tag (gtag.js) - Google Analytics