redis的消息订阅发布介绍

1、redis的消息订阅发布:


进程间的一种消息通信模式:发送者(pub)发送信息,订阅者(sub)接收信息。

注: 图1为 三个客户端 client2、client5、client1 通过 subscribe 命令订阅 频道 channel1 ,图二为 当有新消息通过 publish 命令发送给频道 channel1时,这个消息就会被发送给订阅它的三个客户端。

2、消息订阅发布的相关命令:

PSUBSCRIBE pattern [pattern...]: 订阅一个或者多个符合给定模式的频道

PUBUBSUB subcommand [argument[argument...]]: 查看订阅于发布系统状况

PUBLISH channel message: 将信息发送到指定的频道

PUNSUBSCRIBE [pattern[pattern]]: 退订所有给定模式的频道

SUBSCRIBE channel[channel]: 订阅给定的一个或者多个频道的信息

具体看操作:

a、开启一个 redis 客户端,键入 subscribe channel1 channel2 channel3,进行消息订阅

b、后在另一个终端中开启一个redis客户端,进行消息的发布,键入 publish channel1 hello-redis,可以发现上一个客户端中显示频道订阅的结果。

注: 也可以使用 通配符* 进行订阅。(订阅多个: psubscribe new*, 收取消息: PUBLISH new1 reids 2017)

时间: 2024-10-08 10:04:23

redis的消息订阅发布介绍的相关文章

基于Redis的消息订阅/发布

在工业生产设计中,我们往往需要实现一个基于消息订阅的模式,用来对非定时的的消息进行监听订阅. 这种设计模式在 总线设计模式中得到体现.微软以前的WCF中实现了服务总线 ServiceBus的设计模式.然并卵.WCF已经好像是上个世纪的产物................ 基于事件订阅的模式,比如 EventBus类的组件产品.但是往往设计比较复杂. 如果依赖于 Redis做事件消息推送.那就大大简化了这种设计模式,而且性能也比较客观. Redis在 2.0之后的版本中 实现了 事件推送的  pu

Redis的消息订阅及发布及事务机制

Redis的消息订阅及发布及事务机制 订阅发布 SUBSCRIBE PUBLISH 订阅消息队列及发布消息. # 首先要打开redis-cli shell窗口 一个用于消息发布 一个用于消息订阅 # SUBSCRIBE 订阅一个频道,如果频道不存在 就新增一个 # 返回参数 表示 第一个是命令 第二个是频道名称 第三个表示当前订阅该频道的数量 127.0.0.1:6379> SUBSCRIBE mychannel Reading messages... (press Ctrl-C to quit

关于laravel5 消息订阅/发布的理解初

laravel5.4感觉官网文档说滴不够详细...安装predis官网很详细,这里略过.... 生成命令 直接使用 Artisan 命令 make:command,该命令会在 app/Console/Commands 目录下创建一个新的命令类.如果该目录不存在,不用担心,它将会在你首次运行 Artisan 命令 make:command 时被创建.生成的命令将会包含默认的属性设置以及所有命令都共有的方法, 这里我生成一个RedisSubscribe.php类,执行下面命令: php artisa

【并发】9、借助redis 实现生产消费,消息订阅发布模式队列

这个就是一个消息可以被多次消费的范例了 其实这个实现的方式可以参考我之前的设计模式,观察者模式 https://www.cnblogs.com/cutter-point/p/5249780.html 不过有一点需要注意一下啊,这个消息发布的时候,好像是不支持字节数据的,里面好像会对字节进行转换,这样的结果就是导致我最后无法吧相应的字节转换成我之前序列化的对象 不知道是不是ObjectInputStream和ObjectOutputStream实现不是很好的原因,还是什么,反正反序列化的时候,有些

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

1.  首先需要一个消息监听器类 package com.sogou.baike.testimport.testSubscribe; import redis.clients.jedis.JedisPubSub; /** * Created by denglinjie on 2016/6/29. */ public class RedisMsgPubSubListener extends JedisPubSub { @Override public void unsubscribe() { su

websocket+nodejs+redis实现消息订阅和发布系统

其实我很懒,不想打字,代码已上传到码云,请点此处. 有疑问请一下扫描二维码,加我微信: 原文地址:https://www.cnblogs.com/don-yang/p/8931102.html

C# 数据推送 实时数据推送 轻量级消息订阅发布 多级消息推送 分布式推送

前言 本文将使用一个NuGet公开的组件技术来实现数据订阅推送功能,由服务器进行推送数据,客户端订阅指定的数据后,即可以接收服务器推送过来的数据,包含了自动重连功能,使用非常方便 nuget地址:https://www.nuget.org/packages/HslCommunication/            github地址:https://github.com/dathlin/HslCommunication                                 如果喜欢可以s

消息订阅发布系统Apache Kafka分布式集群环境搭建和简单测试

一.什么是kafka? kafka是LinkedIn开发并开源的一个分布式MQ系统,现在是Apache的一个孵化项目.在它的主页描述kafka为一个高吞吐量的分布式(能将消息分散到不同的节点上)MQ.Kafka仅仅由7000行Scala编写,据了解,Kafka每秒可以生产约25万消息(50 MB),每秒处理55万消息(110 MB) 二.kafka的官方网站在哪里? http://kafka.apache.org/ 三.在哪里下载?需要哪些组件的支持? kafka2.9.2在下面的地址可以下载:

何实现类似JMS的消息订阅/发布机制? 用.net编写的客户端程序如何与使用JMS进行消息

baozoumanhua.com/users/17557217 baozoumanhua.com/users/17557217/forum_articles baozoumanhua.com/users/17557217/followings baozoumanhua.com/users/17557217/talkings baozoumanhua.com/users/17557217/following_articles baozoumanhua.com/users/17557217/arti