redis 队列

#!/usr/bin/env python

import time
import redis

#保证redis服务器启动,默认端口6379

pool = redis.ConnectionPool(host='127.0.0.1', port=6379)  #创建一个redis连接
r = redis.StrictRedis(connection_pool=pool)  #将连接添加进连接管理
while True:
    s = raw_input("publish:")
    if s == 'over':
        print '停止发布'
        break
    r.lpush('tq', s)  #将字符串string添加进一个名为tq的redis队列中
    print time.time()


###################


#!/usr/bin/env python

import time
import threading
import redis


class GETRedis(object):
    
    def __init__(self, host='127.0.0.1', port=6379, key='tq'):
        self.key = key
        try:
            self.pool = redis.ConnectionPool(host=host, port=port)
        except Exception, e:
            print e.message
            
        self.strict_redis(self.pool)

    def strict_redis(self, conn_pool):
        self.pool = redis.StrictRedis(connection_pool=conn_pool)

    def start_work(self):
        while 1:
            task = self.pool.blpop(self.key, 0)[1]
            print time.time()
            self.thread_handle(task)

    def thread_handle(self, task):
        t = threading.Thread(target=self.handle_work, args=(task,))
        t.start()

    def handle_work(self, task):
        print task

if __name__ == '__main__':
    getredis = GETRedis()
    getredis.start_work()


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值