python结合redis模拟队列

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python结合redis模拟队列相关的知识,希望对你有一定的参考价值。

实在无聊就写了个很小的python程序用来实现模拟redis队列的代码如下:
redis_lpush.py
 
#!/usr/bin/python3
import time
import redis
 
def handle(info):
    print(info)
    time.sleep(2)
 
def main():
    pool = redis.ConnectionPool(host=‘localhost‘, port=6379, db=0)
    r = redis.Redis(connection_pool=pool)
    i = 0
    while i < 30:
        i += 1
        r.lpush(‘task‘, i)
        handle(i)
 
if __name__ == "__main__":
    main()
 

 
redis_brpop.py
 
#!/usr/bin/python3
import time
import redis
 
def handle(info):
    print(info)
    time.sleep(2)
 
def main():
    pool = redis.ConnectionPool(host=‘localhost‘, port=6379, db=0)
    r = redis.Redis(connection_pool=pool)
    while 1:
        result = r.brpop(‘task‘, 0)
        handle(result[1])
if __name__ == "__main__":
    main()
 
 

最终效果如下图:
技术分享

 

 技术分享

 

 
有跟我一样的人么——放假前半天不知道干什么,有的话举个手~~~
 
 

以上是关于python结合redis模拟队列的主要内容,如果未能解决你的问题,请参考以下文章

python 操作 redis + 消息队列使用例子

python利用redis构成一个队列

Redis之使用python脚本监控队列长度

多线程和队列

python RabbitMQ队列/redis

生产中的 Redis-Queue (RQ) 任务队列