什么是消息的ACK

不管是哪种类型的消息中间件,都有一一种机制,即consumer端的消息ACK,通俗来讲,就是消息的确认消费机制,为什么会有这个ACK机制呢?这个和消息中间件的架构设计有关

下面是关于consumer端消息ACK的大致流程

从图也可以理解,ACK的作用在于,消费端如果消费成功了,就通过ACK告知broker,broker接收到了ACK的消息后,就可以做其他的业务处理了,比如从队列里删除ACK的消息,或者异步通知应用中的监听器等,而NACK正好相反,假如消费端因为网络故障或者业务处理到某个地方阻塞导致消息得不到处理而不能ACK的状态;

在rabitmq中,消费端可以设置ack为手动签收或者启动签收;

了解了上面的概念之后,我们来说消费者的消息重回队列的问题,举例来说,producer发送到队列的某些消息,在consumer端,会对消息根据业务需要做消息的过滤,那些不需要的消息怎么办呢?在rabbitmq中,如果设置自动签收,那些被过滤掉的消息将会被丢弃,在某些场景下这样是可以的,但是对于一些对消息具有特别规定的,这样的方

rabbitmq消息重回队列相关推荐

  1. RabbitMQ消息100%不丢失?

    消息消费流程: 1.生产端发送消息到RabbitMQ; 2.RabbitMQ发送消息到消费端: 3.消费端消费消息: 以上3个步骤每个步骤都可能导致消息丢失,消息丢失并不可怕,可怕的是丢失了我们还不知 ...

  2. RabbitMQ消息可靠性投递及分布式事务最终一致性实现

    RabbitMQ消息可靠性投递就是保证消息生产者能够将消息百分百投递到RabbitMQ服务器,并在传递过程中不丢失.然而在生产环境中由于网络中断.网络不稳定等原因导致消息在投递过程中丢失,这或许会造成 ...

  3. 消息中间件--RabbitMQ ---高级特性之消费端ACK与重回队列

    什么是消费端的ACK和重回队列? 消费端的手工ACK和NACK 消费端进行消费的时候,如果由于业务异常我们可以进行日志的记录,然后进行补偿 如果由于服务器宕机等严重问题,那我们就需要手工进行ACK保障 ...

  4. RabbitMQ消息队列常见面试题总结

    1.什么是消息队列: 1.1.消息队列的优点: (1)解耦:将系统按照不同的业务功能拆分出来,消息生产者只管把消息发布到 MQ 中而不用管谁来取,消息消费者只管从 MQ 中取消息而不管是谁发布的.消息 ...

  5. RabbitMQ学习系列二:.net 环境下 C#代码使用 RabbitMQ 消息队列

    上一篇已经讲了Rabbitmq如何在Windows平台安装,不懂请移步:RabbitMQ学习系列一:windows下安装RabbitMQ服务 一.理论: .net环境下,C#代码调用RabbitMQ消 ...

  6. RabbitMQ消息超时时间、队列消息超时时间、队列超时时间

    欢迎来到梁钟霖个人博客网站.本个人博客网站提供最新的站长新闻,各种互联网资讯. 还提供个人博客模板,最新最全的java教程,java面试题.在此我将尽我最大所能将此个人博客网站做的最好! 谢谢大家,愿 ...

  7. java 队列和rabbitmq_java – 如何在不使消息出列的情况下浏览rabbitmq中的队列

    我正在尝试获取具有特定相关ID的消息,如rabbitmq docs中所述.但是我看到无关的消息被出列了.我不希望它发生.在得到消息后,我怎么能告诉rabbitmq没有出队,并且知道这不是我想要的那个. ...

  8. SpringBoot使用RabbitMQ消息队列

    RabbitMQ简介 AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计.消息中间件主要用于组件之间的 ...

  9. RabbitMQ 消息队列六种模式

    RabbitMQ 的第一个程序 RabbitMQ-生产者|消费者 搭建环境 java client 生产者和消费者都属于客户端, rabbitMQ的java客户端如下 创建 maven 工程 < ...

最新文章

  1. pygame判断鼠标左键_美商海盗船DarkCoreRGB Pro SE无线电竞鼠标评测
  2. 计算机主板的1117标识,电脑出现:错误1117.......截图如下,
  3. Python类与对象技巧(2):拓展子类属性
  4. sap.m.SplitApp
  5. 你是否觉得.Net Web Service 中asmx文件是多余的?
  6. 测试鬼的软件是假的吗,中国被禁止的6种测鬼方法 证实鬼魂真实存在(谣言)
  7. php android 图片上传,android上传图片到PHP的过程详解
  8. java爬取_java实现爬取知乎用户基本信息
  9. ASP.NET MVC2 数据模型验证类库:MVC Foolproof Validation
  10. [ZT]用CSC.exe来编译Visual C#的代码文件,解释CSC参数和开关的具体作用
  11. U盘硬盘等修复、维护、修理工具集合
  12. MSDN帮助文档中文
  13. 免费随机图片api接口
  14. thinkpkp typecho maccms 全站加密不改动源码方法,多数php程序通用
  15. 【WebGoat习题解析】Parameter Tampering-Bypass HTML Field Restrictions
  16. html单标签的语法并举例,HTML简介及举例
  17. 24bit,192KHz 双通道数模转换电路/立体声数模转换芯片MS4344 可替代CS4344-CZZR
  18. 谨以此篇献给正在迷茫的人生 浅谈网络时代各种骗局
  19. 如何使用DDexec在Linux上隐蔽运行二进制文件
  20. 头条php,基于PHP的免费新闻头条接口查询

热门文章

  1. Tengine(Nginx)动静分离简要配置
  2. Openfire性能优化与压力测试小结
  3. myeclipse 项目改名404
  4. MySQL数据库的远程连接配置
  5. vim中实现javascript代码自动完成功能
  6. 国外博客透露JavaFX 2.0路线图
  7. 如何妥善处理WebBrowser对Javascript的错误问题,阻止JS弹出框,提高用户体验(原创)...
  8. 电子商务对物流的影响
  9. qt翻译--QDragMoveEvent拖放类
  10. ConfirmCancelUtilDialog【确认取消对话框封装类】