目录
一、拒绝/否定 应答机制
1.1、需求分析
之前我们已经实现了确认应答 basicAck ,实际上,这里 RabbitMQ 还是实现了 消费者的 拒绝/否定 应答机制.
什么是 拒绝/否定 应答呢?
消费者执行消费任务的时候,可能会执行成功,也可能会执行失败,针对于失败的情况,我们可以进行拒绝应答,之后根据消费者意愿,将消息重新放回队列,或者是将消息加入丢弃或加入死信队列中(死信信息这里暂不涉及,后续章节会单独进行讲解并设计).
Ps:值得注意的一点是,RabbitMQ 官网上提出,如果在只有一个消费者的情况下,执行 拒绝/否定 应答,可能会导致死循环(执行 拒绝应答,消息重新放入到队列当中,由于只有一个消费者,因此消息会继续交到这个消费者上继续执行,然后引发异常,执行拒绝应答.......).

本文详细介绍了RabbitMQ中的拒绝/否定应答机制,包括需求分析和具体实现。当消费者执行任务失败时,可以选择拒绝应答,将消息重新放回队列或丢弃。同时提到了如果只有一个消费者时可能引发的死循环问题,并解释了basicReject方法及其requeue参数的作用。
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



