首页/ 学科题库/ rabbitmq/ 消息确认机制基础专题
rabbitmq 专题精讲

消息确认机制基础专题

1 篇文章 4 道配套习题

消息确认机制基础专题

专题说明

本专题围绕 RabbitMQ 消息确认机制展开,通过 4 道精选题目帮助学习者理解消息确认的工作原理,掌握自动确认与手动确认的区别,以及如何处理消息拒绝和死信队列等场景。

学习目标

  1. 理解消息确认机制的设计目的与工作原理
  2. 掌握自动确认与手动确认的使用场景和配置方法
  3. 能够正确处理消息拒绝和配置死信队列

学习建议

入门阶段建议先理解核心概念,再动手实践。

配套习题(4 题)

参考答案在文末
判断题
1
判断题

在手动确认模式下,消费者必须在处理完消息后显式调用 basicAck 方法向 Broker 发送确认,否则消息会一直保留在队列中等待重新投递。

A

对

B

错

单选题
2
单选题

在 RabbitMQ 中,关于自动确认模式(Auto Acknowledge),下列说法错误的是:

A

消费者在订阅队列时设置 autoAck=true 即可启用自动确认模式

B

消息一旦被投递给消费者,Broker 会立即将该消息从队列中删除

C

自动确认模式下,如果消费者在处理消息过程中崩溃,消息不会丢失

D

自动确认模式适用于消息处理速度快且对消息丢失不敏感的场景

3
单选题

当消费者无法处理某条消息时(如消息格式错误、业务逻辑校验失败),可以使用 basicNack 或 basicReject 拒绝消息。关于这两个方法,下列说法正确的是:

A

basicReject 可以批量拒绝多条消息,而 basicNack 只能拒绝单条消息

B

调用 basicNack(deliveryTag, false, true) 时,被拒绝的消息会重新入队

C

调用 basicReject(deliveryTag, false) 时,被拒绝的消息会重新入队

D

消息重新入队后,会优先投递给最初拒绝它的那个消费者

多选题
4
多选题

为了防止 RabbitMQ 服务重启后消息丢失,需要进行持久化配置。以下关于消息持久化的说法正确的有:

A

只需将队列声明为持久化(durable=true),消息就会自动持久化

B

消息持久化需要在发布消息时设置 deliveryMode=2(持久化模式)

C

队列持久化(durable=true)确保 RabbitMQ 重启后队列结构仍然存在

D

即使队列和消息都设置了持久化,消息仍可能在写入磁盘前因服务器宕机而丢失

参考答案
1.正确 2.C 3.B 4.B;C;D
想在手机上刷这套专题的真题?
使用微信 卷王开发者小程序/App,首页顶部扫一扫识别二维码,即可解锁本专题全部配套练习与错题本。
了解产品 App
← 上一个专题 消息序列化与格式专题 下一个专题 → 消息路由与绑定专题