`

JMS消息的确认方式

    博客分类:
  • JAVA
 
阅读更多

JMS消息的确认方式

原文:http://www.cnblogs.com/chenying99/archive/2013/07/01/3164640.html

 

这里单独列出来我也是觉得有点必要的,毕竟JMS总体知识点并不多,这点可能被很多人所忽视.

首选定义:消息的确认是指消息接受者接到消息,并做出了对应的处理之后,它将回送一个确认消息.

对于非事务性会话,创建会话时应该指定确定方式,JMS定义了3种确认方式:

JMS确认3种方式
Auto_ACKnowledge

自动通知.
对于同步消费者,Receive方法调用返回,且没有异常发生时,将自动对收到的消息予以确认.
对于异步消息,当onMessage方法返回,且没有异常发生时,即对收到的消息自动确认.

Client_AcKnowledge

客户端自行决定通知时机

这种方式要求客户端使用javax.jms.Message.acknowledge()方法完成确认.

Dups_OK_ACKnowledge

延时//批量通知

这种确认方式允许JMS不必急于确认收到的消息,允许在收到多个消息之后一次完成确认,与Auto_AcKnowledge相比,这种确认方式在某些情况下可能更有效,因为没有确认,当系统崩溃或者网络出现故障的时候,消息可以被重新传递. 

 

分享到:
评论

相关推荐

    利用soapUI3.5测试JMS消息

    首先,Java消息服务(JMS)是一种API,它提供了一种标准的方式来访问消息中间件,使得应用程序可以在不同的平台之间发送和接收消息。JMS支持两种主要的消息模型:点对点(Point-to-Point)和发布/订阅(Publish/...

    JMS 教程 - 消息队列、消息服务

    **可靠性保障**:JMS提供多种级别的可靠性保障,允许开发者根据应用场景选择合适的消息确认策略,从而确保消息能够可靠地传递给目标消费者。 **消息持久化**:为了提高消息服务的可用性,JMS支持将消息持久化到磁盘...

    JMS规范教程pdf

    **1.4 有关两种消息方式简介** JMS支持两种主要的消息传递模式: - **点对点(Point-to-Point)**:在此模式下,每个消息被发送到一个队列,每个消息只能被一个消费者接收。一旦被一个消费者接收,消息就会从队列...

    Java-JMS实例

    2. **消息确认模式**:JMS支持多种确认模式,决定何时确认消息已被正确处理。例如: - AUTO_ACKNOWLEDGE:自动确认,消息处理完成后自动确认。 - CLIENT_ACKNOWLEDGE:客户端确认,需要应用程序显式调用...

    Spring JMS消息处理-不基于JNDI

    在实际应用中,我们还可以根据需求添加事务管理、异常处理、消息确认等高级特性。mq-lib1这个文件可能包含了相关的库,如ActiveMQ的客户端库,供我们的应用程序使用。 总的来说,Spring JMS为不依赖JNDI的环境提供...

    spring-jms源码

    Spring JMS提供了对JMS API的高度封装,简化了消息生产者和消费者的实现,同时也支持事务管理和消息确认机制,极大地提升了开发效率和代码的可维护性。 首先,我们来看看Spring JMS的核心组件。主要包括...

    JMS 中文 规范

    - **消息确认:** JMS支持自动确认和手动确认两种模式,用于确认消息是否已被成功处理。 - **Message接口:** 提供了访问和操作消息的方法,包括读取和设置消息内容。 - **消息选择:** JMS支持基于消息属性的选择...

    基于JMS的消息中间件的实现-论文.zip

    《基于JMS的消息中间件的实现》这篇论文深入探讨了如何在JMX(Java Management Extensions)分布管理框架下设计和实现一个JMS(Java Message Service)消息中间件。本文将详细解析这一主题,旨在理解其核心概念、...

    JMS specification

    6. **消息确认**:消息处理完毕后,客户端通过`Session`确认消息已处理,以便JMS Provider清除消息。 #### 五、JMS规范版本信息 - **版本号**:1.0.2b - **发布日期**:2001年8月27日 - **版权所有者**:Sun ...

    jms对获取消息

    在实际应用中,JMS还提供了各种特性,如持久化消息(确保即使服务器重启也不会丢失消息)、消息选择器(允许消费者仅接收满足特定条件的消息)、事务支持(保证消息的一致性)以及消息确认(生产者或消费者确认消息...

    JMS规范教程(中文)

    本文将详细介绍JMS的基本概念、消息模型、通用设施等知识点,以及编程模型和消息确认等内容。 第1章JMS基本概念 JMS定义了访问企业消息系统的标准API,这些API支持创建、发送、接收消息。JMS规范中的消息模型可以...

    JMS 规范(英文)

    3. **持久化**:JMS提供了持久化选项,即使在消息服务器重启后,未确认的消息仍然可以被恢复并传递给消费者,确保了消息的持久性。 4. **安全性**:JMS支持安全连接,可以通过SSL/TLS协议加密消息传输,同时提供...

    jms规范说明

    JMS消息模型旨在提供一种统一的方式来创建、发送、接收和读取消息。其目标是确保消息的可靠传输,并提供了一套机制来处理消息的确认、排序、重复以及消息体的复杂性。 **2.2 JMS消息结构** JMS消息包含头部...

    JMS规范1.1

    例如,JMS1.1版本提供了更多控制消息选择器和消息确认选项的功能,使得开发人员可以更灵活地处理消息。 JMS规范与Java API之间有着密切的关系。例如,JMS与JDBC技术在数据库操作方面有所交集;与JavaBeans组件、EJB...

    JMS-详细教程.pdf

    ### JMS(Java消息服务)详细教程知识点梳理 #### 一、MQ与J2EE API的关系 **1. JDBC:** - **定义:** JDBC (Java Database Connectivity) 是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问。 ...

    jms-1.1接口定义代码

    总的来说,JMS 1.1提供了一种标准化的方式来处理异步通信,使得开发者能够在不同的平台上构建可靠的消息传递系统,提升系统的性能和可靠性。通过深入理解JMS的接口和工作原理,你可以更好地利用其功能来优化你的应用...

    jms英文书小合集

    4. **消息模型与概念**: 学习JMS时,会接触到消息模型,包括消息的结构(如头、属性和体)、持久性、事务处理、消息确认(ACK)机制以及消息的生存期(TTL)等。理解这些概念对于有效利用JMS进行应用程序间通信至关...

Global site tag (gtag.js) - Google Analytics