rabbitmq 操作库
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

work_queue.md 1.1 KiB

2 years ago
123456789101112131415
  1. ## 工作队列(多收单发)
  2. 工作队列和单发单收模式比起来,接收端可以有多个,接收端多了以后就会出现数据分配问题,发过来的数据到底该被哪个接收端接收,所以有两种模式:
  3. * 公平分发:每个接收端接收消息的概率是相等的,发送端会循环依次给每个接收端发送消息,图一是公平分发,公平分发是rabbitmq默认模式。
  4. * 公平派遣:保证接收端在处理完某个任务,并发送确认信息后,RabbitMQ才会向它推送新的消息,在此之间若是有新的消息话,将会被推送到其它接收端,若所有的接收端都在处理任务,那么就会等待,图二为公平派遣。
  5. > *__注意:__ 使用公平派遣模式时,消费者设置atuoack为false,需要手动回复ack。 关闭自动应答是为了消费者逻辑处理结束前不接受下一条消息,这样哪个消费者逻辑处理的快,接收的消息自然就多,从而实现公平分发。*
  6. ------
  7. - 示例图1 ![image-20220113153420444](../images/md/work_1.png)
  8. - 示例图2 ![image-20220113153420444](../images/md/work_2.png)