写点什么

RabbitMQ 消费者

用户头像
云淡风轻
关注
发布于: 2020 年 05 月 25 日

消息获取:

Basic.Get-轮询模型



Basic.Consume-推送模型

消费者性能:

  1. no_ack 模式(no_ack=true )

当 RabbitMQ 通过打开的连接发送消息时,它使用 TCP 套接字连接与客户端进行通信 。如果这个连接是打开且可写的,那么 RabbitMQ 假定一切都处于正常工作状态并且成功投递了消息。如果当 RabbitMQ 尝试写入套接字 以投递消息时出现了网络问题,操作系统将触发套接字 错误从而让 RabbitMQ 知道出现了问题

  1. 服务质量(QualityOfService, QoS)设置控制消费者预取(ack=true && prefetch=50)

在确认消息接收之前,消费者可以预先要求接收一定数量的消息。

同时确认多个消息,所有以前未确认的消息

  1. 消费者使用事务


消息拒绝

Base.Reject: 通知代理服务器无法对所投递的消息进行处理

Base.Nack: 否定确认, (negative acknowledgement)


死信交换器:( Dead-LettereXchange , DLX)

备用交换器:

过期或被拒绝的消息通过死信交换器进行投递,而备用交换器则路由那些无法由 RabbitMQ 路由的信息 。


控制队列:

  1. 临时队列

自动删除队列

只允许单个消费者

自动过期队列

  1. 永久队列

队列持久性

队列中消息自动 过期

最大长度队列

  1. 任意队列设置


用户头像

云淡风轻

关注

云淡风轻 2018.08.18 加入

JAVA软件工程师

评论

发布
暂无评论
RabbitMQ消费者