zoukankan      html  css  js  c++  java
  • 消息传递:发布订阅模式详解

    1. Redis发布订阅简介

    (1) 定义:Redis发布订阅(pub/sub)是一种消息通讯模式:发送者发送消息,订阅者接受信息

    (2) 具体操作:RedisSUBSCRIBE命令可以让客户端订阅任意数量的频道,每当有新信息发送到被订阅的频道时,信息就会被发送给所有订阅指定频道的客户端

    (3) 实例

    下图展示了频道channel1,以及订阅该频道的客户端----client2client5client1之间的关系

     

    当有新消息通过PUBLISH发送给频道channel1时,这个消息就会被发送给订阅它的三个客户端:

     

    1. 发布/订阅使用

    (1) 发布订阅模式

    ① 基于频道(channel)的发布/订阅

    1) 发布/订阅模式包含两种角色,分别是发布者和订阅者。发布者可以向指定的频道发送消息;订阅者可以订阅一个或者多个频道,所有订阅此频道的订阅者都会收到此消息

    2) 图示

     

    ② 基于模式(pattern)的发布/订阅

    1. 基于频道(channel)的发布/订阅是如何实现的?

    (1) 底层是通过字典(图中的publish_channel)实现的,这个字典就用于保存订阅频道的信息:字典的键为正在被订阅的频道,而字典的值则是一个链表,链表中保存了所有订阅这个频道的客户端。

    (2) 数据结构

    ① 实例:在下图展示的这个pubsub_channels的示例中,client2client5client1就订阅了channel1,而其他频道也被别的客户端所订阅

    ② 图示

     

    (3) 订阅

  • 相关阅读:
    sparksql
    axis2客户端
    windows命令
    如何进行大数据分析及处理(总结)
    linux下如何关闭防火墙?如何查看防火墙当前的状态
    mysql 快速简单安装法
    数据分析笔记
    建设数据仓库的八个步骤
    Java工作记录
    IIS虚拟目录和应用程序
  • 原文地址:https://www.cnblogs.com/juddy/p/14817490.html
Copyright © 2011-2022 走看看