redis实现消息队列
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了redis实现消息队列相关的知识,希望对你有一定的参考价值。
#!/usr/local/bin/python import redis import time class RedisQueue(object): def __init__(self, name, namespace, **redis_args): self.key = "%s:%s" % (namespace, name) self.__db = redis.Redis(**redis_args) def qsize(self): return self.__db.llen(self.key) def empty(self): return self.qsize() == 0 def get(self, block=True, timeout=None): if block: item = self.__db.blpop(self.key, timeout=timeout) else: item = self.__db.lpop(self.key) if item: item = item[1] return item def put(self, item): self.__db.rpush(self.key, item) def get_nowait(self): return self.get(False) r = RedisQueue(‘test‘, "liyang") begin = time.clock() for i in range(0, 100000): r.put(str(i)) end = time.clock() print end-begin begin = time.clock() for i in range(0, 100000): a = r.get() end = time.clock() print end-begin
以上是关于redis实现消息队列的主要内容,如果未能解决你的问题,请参考以下文章