- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于JMS的气象数据汇集系统的研究与实现_计算机论文.doc
基于JMS的气象数据汇集系统的研究与实现_计算机论文
基于JMS的气象数据汇集系统的研究与实现_计算机论文
摘要 在深入研究JMS异步消息处理机制的基础上,利用JMS为分布在不同系统中的气象数据的汇集提供了一个可行的方案,解开了应用程序间的耦合,并增强了应用程序的可扩展性和可靠性。
关键词 消息、JMS、点对点、发布/订阅、数据汇集、气象 现如今,越来越多的企业、单位面临着各种各样的数据集成和系统整合,CORBA、DCOM、RMI等RPC中间件技术也应运而生,但由于采用RPC同步处理技术,在性能、健壮性、可扩展性上都存在着诸多缺点。而基于消息的异步处理模型采用非阻塞的调用特性,发送者将消息发送给消息服务器,消息服务器在合适的时候再将消息转发给接收者;发送和接收是异步的,发送者无需等待,二者的生命周期也可以不必相同,而且发送者可以将消息间接传给多个接收者,大大提高了程序的性能、可扩展性及健壮性,这使得异步处理模型在分布式应用上比起同步处理模型更具有吸引力。
本文详细介绍了Java中的异步处理机制――基于JMS的异步消息处理技术,并结合实例讨论了基于JMS的气象系统数据汇集系统的设计与实现。
1 Java消息服务-JMS
JMS是由包括Sun Microsystems和IBM等在内的几个公司合作设计的一个面向消息的中间件(MOM)API。JMS定义了Java 中访问消息中间件的接口,但JMS 只是接口,并没有给予实现,实现JMS 接口的消息中间件称为JMS提供者(JMS Provider)。JMS的目的是应用程序能在异步情况下可靠地传输和接受消息。从编程的角度来看,JMS可以被当作一个容器管理的资源,与JDBC连接类似。正如你可以通过JDBC去访问许多不同的关系数据库一样,你可以通过JMS访问独立于厂商的消息服务系统。
JMS主要包括三个部分――JMS提供者(JMS Provider)、消息发送者(Message Producer)和消息接收者(Message Consumer)。简单的说,JMS提供者是指实现JMS API接口的消息系统,是消息的中转站;消息发送者是指消息的创造和发送者,是消息的发源地;消息接收者是指接收消息的应用程序,是消息最终的目的地。
JMS消息是异步处理的,消息发送者可以发送一个消息而无须等待响应。消息发送者将消息发送到一条虚拟的通道(主题或队列)上,消息接收者则订阅或是监听该通道。一条消息可能最终转发给一个或多个消息接收者,这些接收者都无需对消息发送者做出回应。
1.1 JMS消息的组成
在J2EE1.4后,JMS API不再区分在点对点域和发布/订阅域中创建的消息。JMS消息由以下三部分组成(如图1.1所示):
消息头(header)――JMS消息头包含了许多字段,它们是消息发送后由JMS提供者或消息发送者产生,用来表示消息、设置优先权和失效时间等等,并且为消息确定路由。
属性(property)――由消息发送者产生,用来添加删除消息头以外的附加信息。
消息体(body)――由消息发送者产生,JMS中定义了5种消息体:ByteMessage、MapMessage、ObjectMessage、StreamMessage和TextMessage。1.2 JMS消息传递模式
JMS支持两种消息传递模式――点对点模式(P2P)和发布/订阅模式(Publish/Subs
cribe)。这两种都是人们熟知的push模式,消息的发送者是活动的发起人,而接收者则是被动的接收消息。在JMS中,这些消息传递模式被称为消息域(message domain)。
1.2.1 JMS点对点消息域
在点对点模式中,发送者和接收者对消息传送的目的地址达成一致,即所谓的队列(queue)。消息队列位于JMS提供者中,消息发送者向一个消息队列发送消息,消息接收者可以在消息发送后的任何时刻从这个队列中(被动地)接收消息,在接收者确认之前消息一直保存在消息队列中直到过期。点对点模式的结构图如图1.2所示:
JMS点对点消息域具有以下特点:
°每条消息能而且只能被一个接收者接收。
°每条消息或者被接收者从队列中取走,或者被 JMS提供者在超时的情况下删除。
°消息产生的时候接收者不一定要存在,接收者可以在消息产生后的任何时间里取走消息。
°接收者不能请求一个消息。
°接收者必须在收到消息后发出确认信息。1.2.2 JMS发布/订阅消息域
在发布/订阅模式下,发送者被称为发布者(publisher),一个消息可已有很多接收者,这些接收者被称为订阅者(subscriber)。发布/订阅模式采用与点对点模式完全不同的消息发送模式。在发布/订阅模式下,发布者给一个主题(topic)发
您可能关注的文档
- 基于CBIR的计算机拼图系统的设计与实现_计算机论文.doc
- 基于CORBA的JAVA消息服务中间件的设计与优化_计算机论文.doc
- 基于CORBA的电子商务系统的安全性_计算机论文.doc
- 基于CORBA的自适应流媒体中间件系统的设计与实现_计算机论文.doc
- 基于CORDIC算法数字下变频器设计_计算机论文.doc
- 基于CPCI总线的数据采集卡及其驱动程序设计_计算机论文.doc
- 基于CRM信息技术的渠道偏好度模型的管理应用_通信学论文.doc
- 基于C语言设置TMS320 DSP中断向量表_计算机论文.doc
- 基于Delphi的水平定向钻进监控软件研究与实现_计算机论文.doc
- 基于DM642的图像边缘检测算法的研究_计算机论文.doc
- 基于JSF技术的WEB应用开发研究_计算机论文.doc
- 基于JXTA和P2P的资源发布系统研究_计算机论文.doc
- 基于LabVIEW的虚拟模电实验的构建——调制解调器_电子机械论文.doc
- 基于MapX的多字段专题饼图的设计_计算机论文.doc
- 基于MasterCAM的后处理应用_计算机论文.doc
- 基于MAS的虚拟企业框架结构设计 _计算机论文.doc
- 基于MATLAB信号处理工具箱的数字滤波器设计与仿真_电子机械论文.doc
- 基于Matlab和VC联合编程的数据处理系统_计算机论文.doc
- 基于MATLAB的数据采集与分析系统设计(一)_计算机论文.doc
- 基于MATLAB的数据采集与分析系统设计(二)_计算机论文.doc
文档评论(0)