zoukankan      html  css  js  c++  java
  • 如何使用redis做异步队列

    我们知道redis支持很多种结构的数据,那么如何使用redis作为异步队列使用呢?

    1. 使用list结构,rpush生产消息,lpop消费消息。
    2. lpop没有消息的时候,可适当sleep后重试。
    3. 若不使用sleep方案,可使用blpop消费消息,它会阻塞直至消息到来。

    pub/sub的主题订阅者模式的优缺点

      优点:可实现生产一次消费多次,实现1:N的消息队列。

      缺点:在消费者下线的情况下,生产的消息会丢失,需要专业的消息队列如rabbitMQ。

    如何使用redis实现演示队列?

      可配合使用sortedset,时间戳为score,消息内容为key,调用zadd来生产消息。消费者用zrangebyscore指令获取数据轮询进行处理。  

    以上总结参考:https://mp.weixin.qq.com/s/HEEhaVLNMGr4W06hPxWKjA

  • 相关阅读:
    EntityFramework系列:MySql的RowVersion
    EntityFramework系列:SQLite.CodeFirst自动生成数据库
    怎么回事呢?
    为蛇么不现实
    发布到个人主页
    作别
    budao 首页
    中午吃饱了
    作业写好了吗?
    分类
  • 原文地址:https://www.cnblogs.com/smallzhen/p/14594820.html
Copyright © 2011-2022 走看看