zoukankan      html  css  js  c++  java
  • Redis 发布与订阅 命令

    该笔记记录redis 发布与订阅的命令。
     
    1.publish
    可用版本: >=2.0.0
    时间复杂度: O(N+M),其中 N 是频道 channel 的订阅者数量,而 M 则是使用模式订阅(subscribed patterns)的客户端的数量。
    命令格式: publish channel message
    作用:
    将消息message发送到指定的频道channel。
    返回值:
    接收到message的订阅者数量。
     
    2.subscribe
    可用版本: >=2.0.0
    时间复杂度: O(N),N为订阅的频道数量
    命令格式: subscribe channel [channel ...]
    作用:
    订阅给定的一个或者多个频道的信息。
    返回值:
    接收到的信息。
     
    3.psubscribe
    可用版本: >=2.0.0
    时间复杂度: O(N),N为订阅的模式数量
    命令格式: psubscribe pattern [pattern ...]
    作用:
    订阅一个或多个符合给定模式的频道。
    每个模式以 * 作为匹配符,比如 it* 匹配所有以 it 开头的频道( it.news 、 it.blog 、 it.tweets 等等), news.* 匹配所有以 news. 开头的频道( news.it 、 news.global.today 等等),诸如此类。
    返回值:
    接收到的信息。
     
    4.unsubscribe
    可用版本: >=1.0.0
    时间复杂度: O(N),N是客户端已订阅的频道数量
    命令格式: unsubscribe channel [channel ...]
    作用:
    指示客户端退订给定的频道。
    如果没有频道被指定,也即是,一个无参数的 UNSUBSCRIBE 调用被执行,那么客户端使用 SUBSCRIBE 命令订阅的所有频道都会被退订。在这种情况下,命令会返回一个信息,告知客户端所有被退订的频道。
    返回值:
    据说在不同客户端会有不同的表现。
     
    5.punsubscribe
    可用版本: >=2.0.0
    时间复杂度: O(N+M) ,其中 N 是客户端已订阅的模式的数量, M 则是系统中所有客户端订阅的模式的数量。
    命令格式: PUNSUBSCRIBE pattern [pattern …]
    作用:
    指示客户端退订所有给定模式。
    如果没有模式被指定,也即是,一个无参数的 PUNSUBSCRIBE 调用被执行,那么客户端使用 PSUBSCRIBE pattern [pattern …] 命令订阅的所有模式都会被退订。在这种情况下,命令会返回一个信息,告知客户端所有被退订的模式。
    返回值:
    据说在不同客户端会有不同的表现。
     
    6.pubsub
    命令格式: pubsub <subcommand> [argument [argument ...]]
    可用版本: >=2.8.0
    注意: 该命令有3种不同用法,拆分记录!!!
    1)
    时间复杂度: O(N) , N 为活跃频道的数量
    命令格式: pubsub channels [pattern]
    作用:
    列出当前的活跃频道。
    活跃频道指的是那些至少有一个订阅者的频道, 订阅模式的客户端不计算在内。
    返回值:
    一个由活跃频道组成的列表。
    其它:
    pattern 参数是可选的:
    如果不给出 pattern 参数,那么列出订阅与发布系统中的所有活跃频道。
    如果给出 pattern 参数,那么只列出和给定模式 pattern 相匹配的那些活跃频道。
    2)
    时间复杂度: O(N) , N 为给定频道的数量
    命令格式: pubsub numsub [channel-1 ... channel-N]
    作用:
    批量回复。
    返回值:
    一个多条批量回复(Multi-bulk reply),回复中包含给定的频道,以及频道的订阅者数量。 格式为:频道 channel-1 , channel-1 的订阅者数量,频道 channel-2 , channel-2 的订阅者数量,诸如此类。 回复中频道的排列顺序和执行命令时给定频道的排列顺序一致。 不给定任何频道而直接调用这个命令也是可以的, 在这种情况下, 命令只返回一个空列表。
    3)
    时间复杂度: O(1)
    命令格式: pubsub numpat
    作用:
    获取订阅模式的数量
    返回值:
    一个整数回复(Integer reply)
    其它:
     这个命令返回的不是订阅模式的客户端的数量, 而是客户端订阅的所有模式的数量总和。
    作者:红雨
    出处:https://www.cnblogs.com/52why
    微信公众号: 红雨python
  • 相关阅读:
    hihoCoder #1062 : 最近公共祖先·一
    hihoCoder #1050 : 树中的最长路
    hihoCoder #1049 : 后序遍历
    108 Convert Sorted Array to Binary Search Tree 将有序数组转换为二叉搜索树
    107 Binary Tree Level Order Traversal II 二叉树的层次遍历 II
    106 Construct Binary Tree from Inorder and Postorder Traversal 从中序与后序遍历序列构造二叉树
    105 Construct Binary Tree from Preorder and Inorder Traversal 从前序与中序遍历序列构造二叉树
    104 Maximum Depth of Binary Tree 二叉树的最大深度
    102 Binary Tree Level Order Traversal 二叉树的层次遍历
    101 Symmetric Tree 判断一颗二叉树是否是镜像二叉树
  • 原文地址:https://www.cnblogs.com/52why/p/14356781.html
Copyright © 2011-2022 走看看