JMS 探讨一

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/han_yankun2009/article/details/50826560

JMSjava消息服务(Java Message Service,被称作是java平台中消息中间件。是一个综合的接口,类似JDBC。各厂商都有不同的实现。

 

自己做了一个图形的总结,见下图


 

总体流程是先有JMS的构成,在说JMS消息的传送流程,传送中有不同的模型。不同模型中实现有个别的差异。大体就是JMS的这些。接下来做个简要介绍

 

JMS的构成

 

1受控对象,一般为连接工厂之类的


2JMS提供者:就是实现JMS个各种消息的服务器,如:ActiveMqEJB(MDB)


3JMS客户机:消息的生产者和消费者


4消息 :JMS客户机之间传送的

 

有了JMS的构成再说这些元素之间的流程会话就简单些许了



JMS创建流程


JMS消息发布的流程顺序分为以下步骤,每个步骤都是在构成元素基础上操作的

 

 1) 用JNDI 得到ConnectionFactory对象;

 

      2) 用ConnectionFactory创建Connection对象;

 

      3) 用Connection对象创建一个或多个JMSSession;

 

      4) 用JNDI得到目标队列或主题对象,即Destination对象;

 

      5) 用Session和Destination 创建MessageProducer和MessageConsumer;

 

      6) 通知Connection开始传递消息

 

基本流程图如下


 


消息模型


消息的传送方法分为两种:分别是p2p订阅/发布模式

 

P2P模式


  点对点进行是通过 队列queue,将消息持久化,并且接收方只能是以为而且也只能消费一次,不可能有副本,使用的策略是负载均衡的方式


Pub/sub


  订阅发布模式 消息支持持久和不持久化

  订阅发布模式是基于主题(Topic)概念,主题是消息发布目标,它和队列的不同就在于,可以有多个发送消息和接收消息的客户机,每个主题可以有多个发布者和多个订阅者。

 

小结:


通过对JMS的总结,认识到JMS为一个标准,给出了基本的套路和流程以及传播形式。只要提供者去实现这些流程和标准就可以通用了。

 

猜你喜欢

转载自blog.csdn.net/han_yankun2009/article/details/50826560
jms
今日推荐