`
hougbin
  • 浏览: 502536 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

jms特性

    博客分类:
  • JAVA
阅读更多

1. 消息通信模型
  JMS 支持两种消息通信模型:点到点(point-to-point)(PTP)模型和发布/订阅(Pub/Sub)模型。除了下列不同之外,这两种消息通信模型非常地相似:
  PTP 模型规定了一个消息只能有一个接收者;Pub/Sub 模型允许一个消息可以有多个接收者。


2. 消息组成
  消息传递系统的中心就是消息。
  一条 Message 分为三个组成部分:
  · 头(header)是个标准字段集,客户机和供应商都用它来标识和路由消息。
  · 属性(property)支持把可选头字段添加到消息。如果您的应用程序需要不使用标准头字段对消息编目和分类,您就可以添加一个属性到消息以实现这个编目和分类。提供 set<Type>Property(...) 和 get<Type>Property(...) 方法以设置和获取各种 Java 类型的属性,包括 Object。JMS 定义了一个供应商选择提供的标准属性集。
  · 消息的主体(body)包含要发送给接收应用程序的内容。每个消息接口特定于它所支持的内容类型。
  JMS 为不同类型的内容提供了它们各自的消息类型,但是所有消息都派生自 Message 接口。
  · StreamMessage:包含 Java 基本数值流,用标准流操作来顺序的填充和读取。
  · MapMessage:包含一组名/值对;名称为 string 类型,而值为 Java 的基本类型。
  · TextMessage:包含一个 String
  · ObjectMessage:包含一个 Serializable Java 对象;能使用 JDK 的集合类。
  · BytesMessage:包含未解释字节流: 编码主体以匹配现存的消息格式。
  · XMLMessage: 包含XML内容。扩展TextMessage,XMLMessage 类型的使用,使得消息过滤非常便利。
3. 消息确认模式
  非事务性会话中,应用程序创建的会话有5 种确认模式,而在事务性会话中,确认模式被忽略。
  五种确认模式说明:
  · AUTO_ACKNOWLEDGE:自动确认模式。一旦接收方应用程序的方法调用从处理消息处返回,会话对象就会确认消息的接收。
  · CLIENT_ACKNOWLEDGE:客户端确认模式。会话对象依赖于应用程序对被接收的消息调用一个acknowledge()方法。一旦这个方法被调用,会话会确认最后一次确认之后所有接收到的消息。这种模式允许应用程序以一个调用来接收,处理并确认一批消息。注意:在管理控制台中,如果连接工厂的Acknowledge Policy(确认方针)属性被设置为"Previous"(提前),但是你希望为一个给定的会话确认所有接收到的消息,那么就用最后一条消息来调用acknowledge()方法。
  · DUPS_OK_ACKNOWLEDGE:允许副本的确认模式。一旦接收方应用程序的方法调用从处理消息处返回,会话对象就会确认消息的接收;而且允许重复确认。在需要考虑资源使用时,这种模式非常有效。注意:如果你的应用程序无法处理重复的消息的话,你应该避免使用这种模式。如果发送消息的初始化尝试失败,那么重复的消息可以被重新发送。
  · NO_ACKNOWLEDGE:不确认模式。不确认收到的消息是需要的。消息发送给一个NO_ACKNOWLEDGE 会话后,它们会被WebLogic 服务器立即删除。在这种模式下,将无法重新获得已接收的消息,而且可能导致下面的结果:1. 消息可能丢失;和(或者)另一种情况:2. 如果发送消息的初始化尝试失败,会出现重复消息被发送的情况。
  · MULTICAST_NO_ACKNOWLEDGE:IP组播下的不确认模式,同样无需确认。发送给一个MULTICAST_NO_ACKNOWLEDGE会话的消息, 会共享之前所述的NO_ACKNOWLEDGE 确认模式一样的特征。这种模式支持希望通过IP 组播方式进行消息通信的应用程序,而且无需依赖会话确认提供的服务质量。注意:如果你的应用程序无法处理消息的丢失或者重复,那么你应该避免使用这种模式。如果发送消息的初始化尝试失败的话,重复的消息可能会被再次发送。
  注:在上表的5 种确认模式中,AUTO_ACKNOWLEDGE ,DUPS_OK_ACKNOWLEDGE 和
  CLIENT_ACKNOWLEDGE 是JMS 规范定义的
,NO_ACKNOWLEDGE 和MULTICAST_NO_ACKNOWLEDGE是WebLogic JMS 提供的。

分享到:
评论

相关推荐

    JMS入门文档,JMS入门文档

    7. **JMS特性**: - **TTL(Time To Live)**:消息存活时间,过期后将被丢弃。 - **优先级**:消息可以设置优先级,高优先级的消息会被优先处理。 - **消息选择器**:允许消费者仅接收满足特定条件的消息。 ...

    C#JMS开发

    它提供了与Java JMS类似的接口,使得C#开发者可以轻松地使用JMS特性。通过Apache.NMS,C#应用可以连接到任何支持JMS的消息代理,如ActiveMQ、IBM WebSphere MQ等。 **四、消息模型** JMS支持两种基本的消息模型:点...

    Java-JMS实例

    **WebLogic JMS 特性** 1. **消息组成**:JMS消息由头、属性和主体组成。头包含了路由消息所需的标准字段,属性是可选的自定义字段,主体则包含消息的实际内容。JMS提供了多种消息类型,如StreamMessage、...

    java jms 源码都在其中

    2. **Spring JMS特性** - **Template**:Spring JMS提供了一个JmsTemplate类,简化了发送和接收消息的操作。 - **Message Listener Container**:自动管理消息监听器的生命周期,支持容器化的消息消费。 - **...

    JMS规范培训教程、JMS源代码

    5. **JMS特性**:包括消息选择器、消息头和属性的使用,这些可以帮助精细化消息过滤和路由。 6. **实践案例**:教程可能会提供实际的编程示例,展示如何在Java应用程序中集成JMS,实现不同应用间的通信。 **JMS源...

    jms_admin.pdf

    本版本文档可能还介绍了一些在本次发布中新增或变更的JMS特性。了解这些新特性有助于利用WebLogic Server提供的最新功能。 ### 其他资源 在WebLogic JMS中,除了基本的资源配置和管理之外,还需要了解其他系统资源...

    jms学习指导(weblogic下的)

    **WebLogic JMS特性** 1. **消息确认模式**: - **AUTO_ACKNOWLEDGE**:消息在处理后自动确认。 - **CLIENT_ACKNOWLEDGE**:由应用程序决定何时确认消息。 - **DUPS_OK_ACKNOWLEDGE**:允许消息重复,适用于资源...

    JMS简介 Java Message Service

    **WebLogic JMS特性** 1. **消息通信模型**:WebLogic JMS支持PTP和Pub/Sub两种模型,每种模型都有其特定的应用场景。 2. **消息组成**:消息由头、属性和主体三部分构成。头包含标准字段,属性允许自定义分类,...

    WebLogic_server8.1_JMS入门.doc

    WebLogic Server 8.1的JMS特性为开发者提供了丰富的选项来处理消息传递,确保了消息的可靠性和灵活性。对于开发分布式、异步和解耦的应用程序来说,WebLogic JMS Server是一个强大的工具。结合JMS的API,开发者可以...

    JMS入门

    【JMS入门】这篇文章主要介绍了Java消息服务(Java Message Service,简称JMS)的基本概念和如何...随着经验的积累,你还可以深入学习其他JMS特性,如事务处理、消息持久化和消息选择器等,以满足更复杂的系统需求。

    fuse esb mq jms

    - **JMS 特性**: - 支持两种消息传递模式:点对点(Point-to-Point, PTP)和发布/订阅(Publish-Subscribe, PUB/SUB)。 - 提供了事务支持,确保消息的可靠传递。 - 可以在不同的消息中间件之间进行互操作。 ##...

    weblogic+jms

    在实际开发中,理解WebLogic的JMS特性并熟练配置和使用JMS服务对于构建高可用、可扩展的企业级Java应用至关重要。通过阅读博客文章“weblogic+jms”,我们可以深入了解这些概念及其在实际工作中的应用,提高我们在...

    PDS-17001_JMS583_Datasheet_(Rev._1.0)_JMS583_jmicron_jms583开发_

    **JMS583的功能特性** 1. **高性能**: 通过USB 3.1 Gen 2到PCIe Gen3x2的转换,JMS583能够提供高效的双向数据传输,满足高速存储需求。 2. **低延迟**: 作为桥接芯片,JMS583设计时考虑了降低系统延迟,确保数据...

    jms-1.1.jar

    本文将深入探讨JMS 1.1的核心概念、主要特性以及实际应用。 一、JMS核心概念 1. 消息:在JMS中,消息是数据传输的基本单元,它封装了要传递的信息。消息可以包含文本、二进制数据或任何Java对象。 2. 消息生产者...

    JMS583 USB PCIE 桥接芯片方案

    **JMS583 USB转PCIE桥接芯片方案** JMS583是一款由JMicron科技公司设计的高效能USB到PCI Express (PCIe)桥接芯片,旨在为电子设备提供一种灵活的方式来实现高速数据传输。这款芯片能够将USB接口转换成PCIe接口,以...

    JMS 简介以及Weblogic配置JMS图解

    【正文】 Java Messaging Service(JMS)是一种标准的API,用于在Java应用程序之间交换消息,特别是在分布式...在WebLogic这样的应用服务器中配置JMS,可以帮助开发者充分利用这些特性,构建高效、健壮的企业级应用。

    JMS583量产工具.zip

    这些可执行文件很可能是不同版本的JMS583量产工具,可能分别适用于不同的系统环境或者具有不同的功能特性。例如,数字5、10、30可能代表不同的固件版本或优化程度。用户需要根据自己的需求选择合适的版本运行。而...

Global site tag (gtag.js) - Google Analytics