网上说的JMS详细是什么意思? (网上说的jmc是什么意思)

网上说的JMS详细是什么意思? (网上说的jmc是什么意思)

本文目录导航:

网上说的JMS详细是什么意思?

JMS是Java信息服务(Java Message Service)的缩写。

JMS是一种基于颁布/订阅和队列模型的面向信息的两边件(MOM)技术。

它准许运行程序创立、发送、接纳和读取信息,这些信息从一个运行程序发送到另一个运行程序,从而成功了运行程序之间的异步通讯。

JMS提供了两种信息模型:点对点(Point-to-Point)和颁布/订阅(Publish/Subscribe)。

在点对点模型中,信息被发送到一个特定的队列,而后被一个消费者接纳并删除。

这种模型实用于一对一的通讯场景,例如,一个订单解决系统或许会将订单信息发送四解决队列,而后由订单解决服务从队列中取出并解决。

在颁布/订阅模型中,信息被颁布到一个主题,而后一切订阅该主题的消费者都会接纳到信息。

这种模型实用于一对多的通讯场景,例如,一个资讯颁布系统或许会将资讯颁布到一个主题,而后一切订阅该主题的订阅者都会收到资讯。

JMS的成功通常包括信息消费者、信息消费者、信息队列或主题以及JMS提供者。

信息消费者担任创立并发送信息,信息消费者担任接纳并解决信息,信息队列或主题用于存储信息,而JMS提供者则提供了JMS API的成功,并治理信息的生命周期。

例如,在一个电子商务系统中,当用户提交订单时,订单信息可以作为一条信息发送到JMS队列中。

订单解决服务可以作为信息消费者从队列中取出订单信息,并启动解决,如库存扣减、生成发货单等。

这样,订单提交和订单解决之间的通讯就是异步的,提高了系统的性能和照应速度。

总的来说,JMS提供了一种灵敏且牢靠的方式来成功运行程序之间的异步通讯,特意实用于须要解耦、异步解决或散布式系统的场景。

JMS是什么意思?

就是姐妹们的双数方式。

JMS 开明分类: 程序、计算机、网络用语 JMS(Java Messaging Service)是Java平台上无关面向信息两边件的技术规范,翻译为Java信息服务。

JMS支持点对点和颁布/订阅两种信息模型。

JMS基本概念 (Java Message Service)是访问企业信息系统的规范API,它便于信息系 统中的Java运行程序启动信息替换,并且经过提供规范的发生、发送、接纳信息的接口简化企业运行的开发。

2. JMS基本色能 JMS是用于和面向信息的两边件相互通讯的运行程序接口。

它既支持点对点(point-to-point)的域,又支持颁布/订阅(publish/subscribe)类型的域,并且提供对下列类型的支持:经认可的信息传递,事务型信息的传递,分歧性信息和具备耐久性的订阅者支持。

JMS还提供了另一种方式来对您的运行与旧的后盾系统相集成。

3. WebLogic JMS Server引见 WebLogic Server8.1合乎JAVA规范,并经过Sun Microsystems J2EE 1.3认 证.作为WebLogic的一局部,当然WebLogic JMS Server也齐全听从JMS规范,还支持集群,并可以运行于实践企业系统.下图是WebLogic JMS Server体系结构.图中可以看到WebLogic JMS Server关键组件有: WebLogic JMS servers(用于信息通讯),Java客户端,JNDI(用于域名查找), 后备存储(用于耐久信息存储,基于文件或许JDBC数据库). WebLogic JMS个性 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 提供的

JNDIJNDI与JMS

在软件开发中,信息通讯表演着关键角色,它准许组件间的高效单干。

JMS(Java Message Service)是一种Java技术,专为Java运行程序设计,旨在支持创立、发送、接纳和治理信息。

它提供了一致的接口,使得开发人员可以轻松地在运行程序之间传递数据。

在通常中,咱们可以看到这样的代码示例:首先,创立一个环境性能(Properties)和初始高低文(InitialContext),而后经过查找称号(TTopicConnectionFactory)失掉TopicConnectionFactory实例。

当咱们须要解决对象及其属性时,例如一团体的信息,JNDI提供了一种方法。例如,经过getAttributes()方法失掉一团体的属性,如姓名、电话、电子邮件和邮政编码,如上方的代码所示:

Attribute attr = (personName)(email);String email = (String)();

JNDI还支持经过对象称号或属性查找对象。比如,咱们可以搜查特定条件下的对象,如查找一切来自o=Wiz,c=US且姓氏为Fox的Wiz对象:

foxes = (o=Wiz,c=US, sn=Fox, controls);

甚至,关于配件设施如打印机,JNDI也能派上用场。经过()方法,可以找到并操作打印机,如下所示:

Printer printer = (Printer)(printerName);(document);

最后,JNDI的命名空间性能准许开发者阅读和治理整个目录,如列出o=Widget, c=US下的一切对象:

NamingEnumeration list = (o=Widget, c=US);while (()) {NameClassPair entry = (NameClassPair)();display((), ());}

总的来说,JNDI与JMS联合,为Java运行程序提供了弱小的信息治理和对象查找性能,简化了开发流程和资源治理。

裁减资料

JNDI(Java Naming and Directory Interface,Java命名和目录接口)是一组在Java运行中访问命名和目录服务的API。

命名服务将称号和对象咨询起来,使得咱们可以用称号访问对象。

目录服务是一种命名服务,在这种服务里,对象岂但有称号,还有属性。

你可能想看:
« 上一篇
下一篇 »

相关推荐

java中什么是冒泡,冒泡算法

2026年09月06日

27阅读

java中冒号,java双冒号

2026年09月06日

26阅读

java中的->,java中的是什么意思

2026年09月06日

24阅读

java中的super用法,Java中super的说明

2026年09月06日

28阅读

java中反射的应用,java中反射的应用场景

2026年09月06日

25阅读

java中开关的定义,Java关键字有哪些

2026年09月06日

25阅读