JMS基本概念

■JMs是什么
          JMS Java Messag/ Servite,Java消息服务,是 Java EE中的一个技术
■JMs规范
         JMS定义a和访问消息中间件的接口,并没有给实现,实现]s接口的消息
中间件称为JMS Provider。例如ActiveMQ

JMS provider: 实现jms接口和规范的信息中间件

JMS message :jms的信息,jms信息有三部分组成
    1:消息头:每个消息头字段部有相应的getter和 serter:方法
    2:消息属性:如果需要除消息头字段以的值,那么以使用消息属性
    3:消息体:封装具体的消息数据
JMs producer:消息生产者,创速和发送M消息的客户端应用
JMS consumer:消息消费者,接收和处理W消息的客户端应用
      消息的消费可以采用以下两种方法之一:
             1:同步消费:通过调用消费者的 receive方法从目的地中显式提取消息, receive方法可
                以一直阻塞到消息到达。
             2:异步消费:客户可以为消费者注册一个消息监听器,以定义在信息到达时所采取动作

JMS domains:消息传递域,JMs规范中定义了两种消息传递域:点对点( point-to-
point,简写成PTP)消息传递域和发布/订阅消息传递域( publish/ subscribe,简写
成pub/sub)
1:点对点消息传递域的特点如下:
        (1)每个消息只能有一个消费者
        (2)消息的生产者和消费者之间没有时间上的相关性。无论消费者在生产者发送消
            息的时候是否处于运行状态,它都可以提取消息

2:发布/订阅消息传递域的特点如下
              (1)每个消息可以有多个消费者
              (2)生产者和消费者之间有时间上的相关性。订阅一个主题的消费者只能消费自它
              订阅之后发布的消息。JMs规范允许客户创建持久订阅,这在一定程度上放松了时
              上的相关性要求。持久订阅允许消费者消费它在未处于激活状态时发送的消息
3:在点对点消息传递域中,目的地被称为队列( queue);在发布/订阅消息传递域中,
目的地被称为主题( topic)

Connection factory:连接工厂,用来创建连接对象,以连接到JMS的 provider
JMS Connection:封装了客户与JMS提供者之间的一个虚拟的连接
JMS Session:是产和消费消息的一个单线程上下文
     会话用于创建消息生产者(preduce)、消息消费者( consumer)和消息
     ( message)等。会话提供了一个事务性的上下文,在这个上:下文中,一组发送
     和接收被组合到了一个原子操作中。
Destination:消息发送到的日的地
Acknowledge:签收
Transaction:事务
JMS client:用来收发消息的Java应用
       Non- JMS client:使用JM5 provider本地API写j的应用,用来替换 JMS API实现收
       发消息的功能,通常会提供其他的一些特寺性,比如: CORBA、RMI等。
        Administered objects:预定义的JM对象,通常在 provide规范中有定义,提
       供给JM客厂广「来访问,比如: ConnectionFactory和 dEstination

分布式-信息方式- JMS基本概念的更多相关文章

  1. 分布式-信息方式-JMS大纲

     一.简介 JMS即Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息, ...

  2. 分布式-信息方式-JMS Topic示例

                                                      Topic消息 非持久的 Topic消息示例对于非持久的 Topic消息的发送       基本跟前 ...

  3. 分布式-信息方式-JMS信息结构

    JMS的消息结构JMS消息由以下几部分组成:消息头,属性和消息体消息头包含消息的识别信息和路由信息,消息头包含一些标准的属性如下:1: JMSDestination:由send方法设置2: JMSDe ...

  4. 分布式-信息方式-JMS可靠性机制

                        JMS的可靠性机制1.消息接收确认        JMS消息只有在被确认之后,才认为已经被成功地消费了.消息的成功消费通常包含三个阶段:客户接收消息.客户处理消 ...

  5. 分布式-信息方式-JMS Queue示例

    代码 package test.mq.helloword; import javax.jms.Connection; import javax.jms.ConnectionFactory; impor ...

  6. 分布式-信息方式-ActiveMQ的Destination高级特性3

    虚拟destination用来创建逻辑destination,客户端可以通过它来生产和消费消息,它会把消息映射到物理destination. ActiveMQ支持2种方式: 1:虚拟主题(Virtua ...

  7. 分布式-信息方式-ActiveMQ的Destination高级特性1

    ActiveMQ的Destination高级特性 Destination高级特性----->Composite Destinations 组合队列Composite Destinations : ...

  8. 分布式-信息方式-ActiveMQ的集群

    ActiveMQ的集群Queue consumer clusters              ActiveMQ支持 Consumer对消息高可靠性的负载平衡消费,如果一个 Consumer死掉,该消 ...

  9. 分布式-信息方式-ActiveMQ静态网络连接的容错

    容错的链接Failover Protocol 前面讲述的都是client配置链接到指定的 broker上.但是,如果 Broker的链接失败怎么办呢?此时, Client有两个选项:要么立刻死掉,要么 ...

随机推荐

  1. windows下php配置环境变量

    这样重启终端后,通过php -v可查看新使用的php版本信息. 注:在path配置在上方的先生效

  2. sql server if else

    DECLARE IF (@sex = '1')BEGIN PRINT '2'END ELSE BEGIN PRINT(1) END begin... end可以省略 declare @sex int ...

  3. django 中实现文件下载的3种方式

    方法一:使用HttpResponse from django.shortcuts import HttpResponse def file_down(request): file=open('/hom ...

  4. jQuery制作弹出窗(模态框)

    来源:(二少)在南极 ##index.html <!DOCTYPE html><html lang="zh"><head> <meta c ...

  5. 两种表复制语句(SQL)

    select into select语句和select into from语句 1.INSERT INTO SELECT语句 语句形式为:Insert into Table2(field1,field ...

  6. 为SourceInsight添加多行注释功能菜单

    由于项目看代码主要使用的是Source Insight,习惯了其他编辑器的多行注释功能,对此感到很不习惯,查询网上程序,可以自行添加. 1.打开project,选择base项目中的utils.em,添 ...

  7. Js实现图片点击切换与轮播

    Js实现图片点击切换与轮播 图片点击切换 <!DOCTYPE html> <html> <head> <meta charset="UTF-8&qu ...

  8. jq选择CheckBox进行排序

    <!DOCTYPE html><html><head> <meta charset="utf-8"> <meta name=& ...

  9. shelve:极其强大的序列化模块

    介绍 数据持久化,就是把数据从内存刷到磁盘上.但是要保证在读取的时候还能恢复到原来的状态.像pickle和json之类的持久化模块基本上无需介绍了,这里介绍两个其他很少用但是功能很强大的模块. dbm ...

  10. 终极之战:Linux & Windows

    1.开源 当你买了一辆车,但你看不到引擎盖下面是什么?当你使用Windows驱动系统时就是如此.但是,相比之下,Linux完全是一个开源项目.你可以看看Linux操作系统的源代码,这是一个优点.Lin ...