zoukankan      html  css  js  c++  java
  • redis实现异步队列

    1、一般使用list结构作为队列,rpush生产消息,lpop消费消息。当lpop没有消息的时候,要适当sleep一会再重试。

    2、如果不用sleep,那么list还有个指令叫blpop,在没有消息的时候,它会阻塞住直到消息到来。

    3、如何实现生产一次消费多次?

    使用pub/sub主题订阅者模式,可以实现1:N的消息队列。

    4、如何实现延时队列?

    使用sortedset,拿时间戳作为score,消息内容作为key调用zadd来生产消息,消费者用zrangebyscore指令获取N秒之前的数据轮询进行处理。

  • 相关阅读:
    MongoDB小结07
    MongoDB小结07
    MongoDB小结06
    MongoDB小结05
    MongoDB小结04
    MongoDB小结03
    MongoDB小结02
    MongoDB小结01
    this与super
    UVa 11174
  • 原文地址:https://www.cnblogs.com/yanwei-wang/p/8432292.html
Copyright © 2011-2022 走看看