(九)redis常用命令之发布订阅

  • 概述
    redis是可以满足简单的消息队列的功能的,比如消息队列的两种模型:点对点 和发布订阅。点对点可以通过redis中的list进行实现,结合lpush和brpop(阻塞读取)命令来实现。发布订阅模型就是现在要讲的,发布订阅模式又三部分组成:发布者,订阅者,频道。发布者发送消息到频道,然后订阅了频道的人都可以收到消息。
    在这里插入图片描述

  • publish命令(发布消息)
    格式: publish channel message(返回订阅者个数)
    在这里插入图片描述

  • subscribe命令(订阅消息)
    格式: subscribe channel [channel …]
    在这里插入图片描述
    在这里插入图片描述
    注意:客户端可以订阅多个频道,都能收到消息,使用字段做区分。客户端无法收到订阅之前的消息,因为redis不会对消息进行持久化保存,发完就丢失了,无法实现消息堆积和回溯。

  • unsubscribe命令(取消订阅)
    格式: unsubscribe [channel …]

  • psubscribe和punsubscribe命令(模式进行订阅取消)
    格式:psubscribe/punsubscribe pattern [pattern…]

  • pubsub命令(查看活跃的频道—至少一个订阅者)
    格式: pubsub channels
    在这里插入图片描述

  • pubsub numsub命令(查看频道订阅数)
    格式: pubsub numsub [channel…]
    在这里插入图片描述

  • 使用场景
    a.服务直接解耦和异步处理

发布了65 篇原创文章 · 获赞 11 · 访问量 7159

猜你喜欢

转载自blog.csdn.net/weixin_38312719/article/details/95391683