• Redis 消息模式


    消息模式介绍

    消息模式是为了帮助解决在业务中,进行资源有效利用方面的协调

    Redis 的消息模式类型:发布订阅,消息队列

    Redis 发布订阅

    • 发布者(pulisher)
    • 频道(channel)
    • 订阅者(subscriber)

    创建一个频道

    127.0.0.1:6379> SUBSCRIBE test
    1) "subscribe"
    2) "test"
    3) (integer) 1
    

    发布者发送消息

    127.0.0.1:6379> PUBLISH test "hhhhh"
    (integer) 1
    127.0.0.1:6379> PUBLISH test 'hi'
    (integer) 2
    

    订阅者接受消息

    Reading messages... (press Ctrl-C to quit)
    1) "subscribe"
    2) "test"
    3) (integer) 1
    1) "message"
    2) "test"
    3) "hhhhh"
    1) "message"
    2) "test"
    3) "hi"
    

    实现类似QQ聊天功能

    Redis 消息队列

    在Redis中列表类型天生就是一个消息队列。

    使用 Python + Redis 实现生产者消费者模型

    生产者

    import redis
    import time
    
    r = redis.Redis(host='192.168.100.10', password='000000')
    
    for i in range(100):
        r.lpush('P_C', f'{i + 1:0>3}')
        time.sleep(4)
    

    消费者

    import redis
    import time
    
    r = redis.Redis(host='192.168.100.10', password='000000')
    
    for i in range(100):
        rest = r.brpop('P_C')
        print(f'吃了第{rest[1].decode("utf-8")}个包子')
        time.sleep(3)
    
  • 相关阅读:
    LeetCode 222. Count Complete Tree Nodes
    k8s控制节点etcd删除并重新加入
    k8s证书延长时间(二)
    二进制安装多master节点的k8s集群(2)
    kubeadm安装多master节点的k8s集群(1)
    OutOfMemoryError异常总结
    使用线程
    操作系统基础
    java 代码执行顺序
    jvm的内存模型
  • 原文地址:https://www.cnblogs.com/xiasir/p/12981210.html
Copyright © 2020-2023  润新知