消费者Redis架构实现阻塞生产者消费者模式(redis 阻塞生产者)
阻塞生产者消费者模式是一种常见的模式,它具有生产者发布任务、消费者消费任务和消息队列存储任务的三种成分。Redis消费者架构实现阻塞生产者消费者模式的思路是,将任务定义为可阻塞的命令,生产者往Redis消息队列传递任务,消费者从队列获取任务,执行完任务则将结果存入Redis中。
下面具体介绍一下,Redis消费者架构实现阻塞生产者消费者模式的实现方式:
1. 定义阻塞生产者消费者模式的实现命令:
首先定义有关ESTABLISH,CONSUME和RESULT的命令,其格式如下:
ESTABLISH:
CONSUME:
RESULT:
2. 启动生产者:
生产者启动后,会从队列中任务并往Redis消息队列传递ESTABLISH命令。
# 生产者启动
while True:
# 从队列中取出任务信息
task = dequeue()
# 将ESTABLISH命令传递到Redis消息队列
rc.lpush('ESTABLISH', json.dumps({'task_id': task.task_id, 'data': task.data}))
3. 启动消费者:
消费者启动后,它会向Redis消息队列发送CONSUME命令,用于获取任务,取出的任务就是队列中的任务;当然,如果不加任务的话,CONSUME会一直发送,直到发现任务
香港服务器首选后浪云,2H2G首月10元开通。
后浪云(www.IDC.Net)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。
版权声明:
作者:后浪云
链接:https://www.idc.net/help/98729/
文章版权归作者所有,未经允许请勿转载。
THE END