python+redis blpop方法获取不到队列里的数据?
我用python开发我的应用调用blpop从redis队列获取新消息,如果队列里面没有数据就阻塞。但是上线运行一段时间后,通过redis原生的blpop命令可以看到队列有数据,但是程序就是获取不到,程序一直阻塞在result=r.blpop(queue_name) ,重启后没事??这是怎么回事?有什么办法或工具找到问题吗?
代码如下:
pool = redis.ConnectionPool(host=globalConfig.redis_ip,
port=globalConfig.redis_port,db=globalConfig.redis_db)
r = redis.StrictRedis(connection_pool=pool)
while True:
result=r.blpop(queue_name) ##队列没有数据就阻塞
###执行自己的业务逻辑####
华丽谢幕.
10 years, 2 months ago