jms什么意思(网上说的“JMS”具体是什么意思)

中国机械与配件网4800

网上说的“JMS”具体是什么意思

JMS是指Java消息服务,JavaMessageService的简称。

jms什么意思(网上说的“JMS”具体是什么意思)

Java消息服务(JavaMessageService,JMS)应用程序接口是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。Java消息服务是一个与具体平台无关的API,绝大多数MOM提供商都对JMS提供支持。

Java消息服务的规范包括两种消息模式,点对点和发布者/订阅者。许多提供商支持这一通用框架因此,程序员可以在他们的分布式软件中实现面向消息的操作,这些操作将具有不同面向消息中间件产品的可移植性。

扩展资料

JMS的优势:

1、异步

JMS天生就是异步的,客户端获取消息的时候,不需要主动发送请求,消息会自动发送给可用的客户端。

2、可靠

JMS保证消息只会递送一次。大家都遇到过重复创建消息问题,而JMS能帮你避免该问题。

在JMS中,消息的接收可以使用以下两种方式:

同步:使用同步方式接收消息的话,消息订阅者调用receive()方法。在receive()中,消息未到达或在到达指定时间之前,方法会阻塞,直到消息可用。

异步:使用异步方式接收消息的话,消息订阅者需注册一个消息监听者,类似于事件监听器,只要消息到达,JMS服务提供者会通过调用监听器的onMessage()递送消息。

参考资料来源:百度百科-Java消息服务

“JMS”是什么意思

就是姐妹们的复数形式。

JMS

开放分类:程序、计算机、网络用语

JMS(JavaMessagingService)是Java平台上有关面向消息中间件的技术规范,翻译为Java消息服务。JMS支持点对点和发布/订阅两种消息模型。

JMS基本概念

1.JMS(JavaMessageService)是访问企业消息系统的标准API,它便于消息系

统中的Java应用程序进行消息交换,并且通过提供标准的产生、发送、接收消息的接口简化企业应用的开发。

2.JMS基本功能

JMS是用于和面向消息的中间件相互通信的应用程序接口。它既支持点对点(point-to-point)的域,又支持发布/订阅(publish/subscribe)类型的域,并且提供对下列类型的支持:经认可的消息传递,事务型消息的传递,一致性消息和具有持久性的订阅者支持。JMS还提供了另一种方式来对您的应用与旧的后台系统相集成。

3.WebLogicJMSServer介绍

WebLogicServer8.1符合JAVA规范,并通过SunMicrosystemsJ2EE1.3认

证.作为WebLogic的一部分,当然WebLogicJMSServer也完全遵从JMS规范,还支持集群,并可以应用于实际企业系统.下图是WebLogicJMSServer体系结构.图中可以看到WebLogicJMSServer主要组件有:WebLogicJMSservers(用于消息通信),Java客户端,JNDI(用于域名查找),后备存储(用于持久消息存储,基于文件或者JDBC数据库).

WebLogicJMS特性

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:包含一个SerializableJava对象;能使用JDK的集合类。

·BytesMessage:包含未解释字节流:编码主体以匹配现存的消息格式。

·XMLMessage:包含XML内容。扩展TextMessage,XMLMessage类型的使用,使得消息过滤非常便利。

3.消息确认模式

非事务性会话中,应用程序创建的会话有5种确认模式,而在事务性会话中,确认模式被忽略。

五种确认模式说明:

·AUTO_ACKNOWLEDGE:自动确认模式。一旦接收方应用程序的方法调用从处理消息处返回,会话对象就会确认消息的接收。

·CLIENT_ACKNOWLEDGE:客户端确认模式。会话对象依赖于应用程序对被接收的消息调用一个acknowledge()方法。一旦这个方法被调用,会话会确认最后一次确认之后所有接收到的消息。这种模式允许应用程序以一个调用来接收,处理并确认一批消息。注意:在管理控制台中,如果连接工厂的AcknowledgePolicy(确认方针)属性被设置为"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是WebLogicJMS提供的

饭圈jms什么意思

“饭”是来源于英文中“fans”的谐音,指的是爱好者、粉丝的意思,而饭圈指的则是一个明星的粉丝圈子、粉丝团体,多为自发形成。比如,你有了喜欢的明星,并加入了粉丝团,你就成为饭圈里的人了!