JMS概要(Java Message Service Overview)

 

 

这个关于JMS(Java Message Service)的概要回答了下面几个问题:

 

1.什么是消息?

2.么是JMS API

3.如何使用JMS API

4. JMS API是如何与J2EE平台一起工作的?

 

1.1什么是消息?

消息是软件组件或者应用之间交流的一种方法。消息系统是一个点对点的功能,一个消息客户端可以发送和接受从别的客户端发过来的消息,这些客户端连接到一个消息代理,这个代理提供创建、发送、接受和读取消息。

消息让分布式通讯变得松散耦合。一个组件发送一个消息到目的端,接受着可以从目的地查询消息。但是,发送者和接受着不用同时在线。实际上,发送者没有必要知道关于接受着的任何信息,接受着也不需要。发送者和接受者只需要知道消息的格式和目的地。从这个方面来看,消息和一些紧密耦合的技术比如RMI有区别,RMI需要知道远程应用的方法。

消息也有区别于EmailEmail是人和人,软件和人交流的手段。而消息是软件应用或者组件之间交流的手段。

 

1.2   什么是JMS API

JMS API是一个Java API,它允许应用创建、发送、接受和读取消息。JMS APISun和其他几个公司合作编写的,提供有一系列的接口和语义,允许Java语言和其他消息实现通信。

JMS最小化了开发人员需要学习消息系统需要使用的概念,而且提供了足够的功能来支持复杂的消息应用。而且最大化了JMS的可移植性。

JMS不仅仅降低了通信的耦合,而且有以下特性:

· 异步的

JMS提供者可以把消息传递给客户端,客户端不用去主动请求

·可靠的

JMS API可以保证消息会被传递而且只传递一次。应用可以处理丢失消息和接受到重复消息的情况

JMS说明在1998年第一次出版,最新版是1.0.2b,是2001年发行的。

 

1.3什么时候可以使用JMS

企业应用提供商趋向于选择JMS API来替代紧密耦合的技术比如RPC,基于下面的原因:

·提供商不想让组件依赖其他组件,这样组件可以轻松替换

·提供商想让应用运行在不管其他组件是不是可用的情况下

·应用的业务模型允许组件发送信息到其他组件,而不需要实时的响应比如,一个汽车制造商的企业应用的组件可以在下面的情况下使用JMS

·当存货不足的时候,存货组件可以发送一个消息到工厂组件,这样工厂就可以开始生产

·工厂组件可以发送消息到零件组件,这样零件组件就可以汇集他需要的零件

·工厂组件和零件组件都可以发送消息到会计组件来更新预算数据

·业务也可以发行新的目录项到销售团队

 

用消息来完成各个组件的交互非常高效,不用考虑网络或者其他资源。

 

1.4   JMS怎样与J2EE平台一起工作

1998JMS刚刚出来的时候,主要是为了让Java可以和已存在的面向消息的中间件,比如IBMMQSeries。从那个时候起,很多提供商都实现了JMS,所以现在JMS可以提供完整的消息功能给企业应用。

J2EE1.2平台中,要求提供JMS接口,在J2EE1.3中,JMS已经集成到其中,开发者可以用J2EE API来使用JMS

J2EE 1.3平台有下面的功能:

·应用客户端、EJB组件、Web组件可以发送和异步接受JMS消息。应用客户端也可以异步接受消息。

·消息驱动Bean可以异步处理消息,这样JMS提供者就可以通过消息驱动Bean来处理消息

·消息的发送和接收可以参加分布式事务

JMS增强了J2EE平台,简化了企业开发,允许松散耦合,可靠。并且可以让J2EE组件和遗留系统之间交互。开发人员很容易添加消息驱动bean来操作确定的业务事件。EJB容器也增强了JMS,因为其提供了分布式事务支持并且允许并发的消息使用。

 

JMS降低了J2EE应用和已存在的系统之间的耦合。

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值