Redis 任务队列
任务队列
-
队列的优点
1、松耦合,只生产者和消费者无需知道彼此的细节, 按约定好任务描述格式
2、易扩展,消费者可以有多个,且可以分配在不同服务器,故可轻易降低单个服务器的负载 -
队列很容易想到Redis的列表类型,使用lpush和rpop或brpop命令实现队列的概念。brpop和rpop的唯一区别是当列表中没有元素是,brpop命令会一直阻塞住链接
127.0.0.1:6379> brpop queue 0
127.0.0.1:6379> lpush queue task
(integer) 1
127.0.0.1:6379> brpop queue 0
1) "queue"
2) "task"
(17.99s)