ActiveMQ总结
52页1、1. 背景 当前,CORBA、DCOM、RMI等RPC中间件技术已广泛应用于各个领域。但是面对规模和复杂度都越来越高的分布式系统,这些技术也显示出其局限性:(1)同步通信:客户发出调用后,必须等待服务对象完成处理并返回结果后才能继续执行;(2)客户和服务对象的生命周期紧密耦合:客户进程和服务对象进程 都必须正常运行;如果由于服务对象崩溃或者网络故障导致客户的请求不可达,客户会接收到异常;(3)点对点通信:客户的一次调用只发送给某个单独的目标对象。 面向消息的中间件(Message Oriented Middleware,MOM)较好的解决了以上问题。发送者将消息发送给消息服务器,消息服务器将消息存放在若干队列中,在合适的时候再将消息转发给接收者。这种模式下,发送和接收是异步的,发送者无需等待;二者的生命周期未必相同:发送消息的时候接收者不一定运行,接收消息的时候发送者也不一定运行; 一对多通信:对于一个消息可以有多个接收者。 已有的MOM系统包括IBM的MQSeries、Microsoft的MSMQ和BEA的MessageQ等。由于没有一个通用的标准,这些系统很难实现互操作和无缝连接。
2、Java Message Service(JMS)是SUN提出的旨在统一各种MOM系统接口的规范,它包含点对点(Point to Point,PTP)和发布/订阅(Publish/Subscribe,pub/sub)两种消息模型,提供可靠消息传输、事务和消息过滤等机制。2JMS概述2.1 JMS规范JAVA 消息服务(JMS)定义了Java 中访问消息中间件的接口。JMS 只是接口,并没有给予实现,实现JMS 接口的消息中间件称为JMS Provider,例如ActiveMQ。2.2 术语 JMS Provider:实现JMS 接口的消息中间件;PTP:Point to Point,即点对点的消息模型; Pub/Sub:Publish/Subscribe,即发布/订阅的消息模型;Queue:队列目标;Topic:主题目标;ConnectionFactory:连接工厂,JMS 用它创建连接;Connection:JMS 客户端到JMS Provider 的连接;Destination:消息的目的地;Session:会话,一个发送或接收消息的线程;MessageProducer:由Sess
3、ion 对象创建的用来发送消息的对象;MessageConsumer:由Session 对象创建的用来接收消息的对象;Acknowledge:签收;Transaction:事务。2.3 JMS编程模型在 JMS 编程模型中,JMS 客户端(组件或应用程序)通过 JMS 消息服务交换消息。消息生产者将消息发送至消息服务,消息消费者则从消息服务接收这些消息。这些消息传送操作是使用一组实现 JMS 应用编程接口 (API) 的对象(由 JMS Provide提供)来执行的。在 JMS 编程模型中,JMS 客户端使用 ConnectionFactory 对象创建一个连接,向消息服务发送消息以及从消息服务接收消息均是通过此连接来进行。Connection 是客户端与消息服务的活动连接。创建连接时,将分配通信资源以及验证客户端。这是一个相当重要的对象,大多数客户端均使用一个连接来进行所有的消息传送。连接用于创建会话。Session 是一个用于生成和使用消息的单线程上下文。它用于创建发送的生产者和接收消息的消费者,并为所发送的消息定义发送顺序。会话通过大量确认选项或通过事务来支持可靠传送。客户端使用
4、 MessageProducer 向指定的物理目标(在 API 中表示为目标身份对象)发送消息。生产者可指定一个默认传送模式(持久性消息与非持久性消息)、优先级和有效期值,以控制生产者向物理目标发送的所有消息。同样,客户端使用 MessageConsumer 对象从指定的物理目标(在 API 中表示为目标对象)接收消息。消费者可使用消息选择器,借助它,消息服务可以只向消费者发送与选择标准匹配的那些消息。消费者可以支持同步或异步消息接收。异步使用可通过向消费者注册 MessageListener 来实现。当会话线程调用 MessageListener 对象的 onMessage 方法时,客户端将使用消息。2.4 JMS编程域JMS 支持两种截然不同的消息传送模型:PTP(即点对点模型)和Pub/Sub(即发布/订阅模型),分别称作:PTP Domain 和Pub/Sub Domain。PTP(使用Queue即队列目标) 消息从一个生产者传送至一个消费者。在此传送模型中,目标是一个队列。消息首先被传送至队列目标,然后根据队列传送策略,从该队列将消息传送至向此队列进行注册的某一个消费者,一次
《ActiveMQ总结》由会员博****1分享,可在线阅读,更多相关《ActiveMQ总结》请在金锄头文库上搜索。
河北教师资格考试笔试大纲《科学学科知识与教学能力》(初级中学).docx
彩超医生述职报告
保乳术治疗早期乳腺癌疗效分析.docx
2022年贵州省建筑安管人员安全员ABC证资格证书考核(全考点)试题附答案参考5
科普示范工作情况汇报-工作情况汇报范文
《小手拉大手
雨伞中的母爱
湖南省耒阳市坪田学校八年级英语上册Unit1PlayingsportsTopic1I039mgoingtoplaybasketballSectionC1d2b导学案无答案新版仁爱版
[建筑]高级工程师申报个人技术自传1.doc
[其他资格考试]2011通知1.doc
几家DDC控制器的比较
机掘队队长安全生产与职业病危害防治责任制
最新北师大版八年级下册2.6实数教案
x52k铣床的数控化改造,数控技术专业。.doc
2023年成套设备买卖合同(份范本)
20万吨合成氨扩建项目可行性研究报告
小学二年级优等学生评语
2022年中节的广播稿5篇
2023玻璃购销合同范文.doc
钟映玲教学设计2
2023-04-07 31页
2023-06-30 7页
2023-09-10 7页
2023-07-29 32页
2023-10-09 4页
2022-10-29 12页
2023-12-15 4页
2022-09-26 48页
2022-12-28 5页
2022-12-20 4页