zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    MySQL distinct 与 group by 去重(where/having)
    mysql 的垂直分表和水平分表
    查看mysql语句运行时间
    PHP的性能优化方法总结
    Apache ab 压测工具使用说明
    LNMP 性能优化之 PHP 性能优化
    [PHP]日志处理error_log()函数和配置使用
    cocos2dx之tolua++全面分析(二):类注册
    在命令行上启动genymotion虚拟机
    在64位ubuntu上安装alienbrain客户端
  • 原文地址:https://www.cnblogs.com/chengxuzhixin/p/6393298.html
Copyright © 2011-2022 走看看