博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《redis in action》redis发布订阅
阅读量:4209 次
发布时间:2019-05-26

本文共 812 字,大约阅读时间需要 2 分钟。

我们在学些rabbitmq中知道一个概念那就是发布和订阅,当然我们在解析eurak注册中心的时候也说过发布订阅。其实redis也提供了相关的功能。所以说redis还是非常强大的存在。咋今天主要就是翻译一下《redis in action》书中写的关于redis发布和订阅这块的内容。首先redis的发布订阅是基于信道的,也就是说发布和订阅其实都是基于信道,发布者将消息发送到信道,然后订阅者监听信道,获取得到消息。这块书中建议我们将发布订阅模型理解为广播站,监听一个信道的所有订阅者都可以获得消息。

在这段内容中,我们将研究发布订阅的一些操作命令,了解了这块的内容,之后第八章做一些事情了。

Redis中发布订阅相关的命令如下:

Subcriribe:订阅指定的信道Unsubscribe:接触对已经订阅的信道,如果没有给定信道,那么就会解除所有链接的信道Publish:将消息发送到指定的信道上Psubscribe:根据正则表达式订阅信道上的消息Punsubscribe:解除给定正则表达式的信道

Redis中的发布订阅是可以非常有用的,但是要主要的点也有两个,这两块有可能导致信息缺失。

第一点:在老版本的reids中,如果我们的redis中链接都正常,但是client-output-buffer-limit(客户端链接缓存限制)参数过大会导致redis奔溃,操作系统就会停止redis进程。但是在新版本已经不存在这个问题了,但是新版本会让信道连接不可用,主要的情况就是发布的消息太多,超过了上限的情况。这块将在第八章详细说明!

第二点:数据传输的可靠性,在网络链接中,不可避免的会产生连接中断的情况,典型的就是链接中断之后的重试,然后在重试的过程中信息已经发送到这个信道上了。那么即便您重新链接上了这个信道,那么也是无法收到消息的。

当然如果您打算使用redis做发布和订阅这件事,那您可能不可避免的会丢失一些消息。

转载地址:http://vwumi.baihongyu.com/

你可能感兴趣的文章
专业计划
查看>>
小米笔试:最大子数组乘积
查看>>
常见的排序算法
查看>>
5.PyTorch实现逻辑回归(二分类)
查看>>
6.PyTorch实现逻辑回归(多分类)
查看>>
8.Pytorch实现5层全连接结构的MNIST(手写数字识别)
查看>>
9.PyTorch实现MNIST(手写数字识别)(2卷积1全连接)
查看>>
hdu 3460 Ancient Printer(trie tree)
查看>>
中间数
查看>>
KMP求前缀函数(next数组)
查看>>
KMP
查看>>
poj 3863Business Center
查看>>
Android编译系统简要介绍和学习计划
查看>>
Android编译系统环境初始化过程分析
查看>>
user2eng 笔记
查看>>
DRM in Android
查看>>
ARC MRC 变换
查看>>
Swift cell的自适应高度
查看>>
【linux】.fuse_hiddenXXXX 文件是如何生成的?
查看>>
【LKM】整合多个LKM为1个
查看>>