中间件的研究综述

来源 :科技与生活 | 被引量 : 0次 | 上传用户:lichiuyun13
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  中图分类号 TP316文献标识码A文章编号1673-9671-(2009)111-0024-01
  
  计算机技术和网络技术的飞速发展,许多应用程序需在网络环境的异构平台上运行。在这种分布异构环境中,通常存在多种硬件系统平台(如PC,工作站,小型机等),在硬件平台上又存在各种各样的系统软件(如不同的操作系统、数据库、语言编译器等),以及多种风格各异的用户界面,这些硬件系统平台还可能采用不同的网络协议和网络体系结构连接。如何把这些系统集成起来并开发新的应用是一个现实而困难的问题,于是“中间件”技术就应运而生。
  中间件是一种独立的系统软件或服务程序,位于应用与操作系统之间,屏蔽底层操作系统、网络以及数据库的异构性和复杂性,简化网络分布应用的开发、管理和维护,实现了应用逻辑与系统服务关注点的分离。
  
  1 中间件的定义
  
  为了解决分布异构问题,提出了中间件的概念。中间件是位于平台(硬件和操作系统)和应用之间的通用服务,如图中间件示意图1所示,这些服务具有标准的程序接口和协议。针对不同的操作系统和硬件平台,它们可以有符合接口和协议规范的多种实现。
  
  IDC(互联网数据中心)对中间件的定义表明,中间件是一类软件,而非一种软件;中间件不仅仅实现互连,还要实现应用之间的互操作;中间件是基于分布式处理的软件,最突出的特点是其网络通信功能。
  国外学术界给中间件的定义:中间件是一种软件,它能使处于应用层中的各应用成分之间实现跨网络的协同工作(也就是互操作)这时允许各应用成分之下所涉及的“系统结构、操作系统、通信协议、数据库和其他应用服务”各不相同。这一定义可形象地表示成如图中间件示意图2
  
  2中间件的分类
  
  2.1 数据访问中间件
  数据访问中间件是指一切连接应用程序和数据库的软件。面向数据库的中间件允许开发人员通过单一的、定义良好的API访问另一台计算机上的资源,数据访问中间件的使用是解决异质平台、异质环境、异质数据库的统一访问、统一存取的最佳方案。
  在分布式系统中,重要的数据都集存放在数据服务器中,它们可以是关系型、复合文档型、具有各种存放格式的多媒体型,或者是经过加密或者压缩存放,数据访问中间件是在这种系统中建立数据应用资源互操作的模式,实现异构环境下的数据库联接或文件系统联接的中间件,从而为在网络上虚拟缓冲存取、格式转换、解压等带来方便。
  2.2 事务处理中间件
  事务是对共享的系统资源所完成的一件工作,它通常由一系列的操作所组成。事务处理中间件则主要用于分布式计算环境中产生事务的监控和管理。
  事务处理中间件向用户提供一系列的服务,如应用管理,管理控制以及应用程序间的消息传递等。常见的功能包括全局事务协调、事务的分布式两段提交、资源管理器支持、故障恢复、高可靠性、网络负载平衡等。
  2.3 面向消息中间件
  在不同的网络硬件平台、不同的操作系统乃至不同的网络协议上的应用程序之间有时需要传送消息,这时应用程序对传送的要求是所传消息内容可靠和可恢复性(当发生意外,信息无法正常接受),而并不要求消息的即时即刻传递到对方。因此,需要一种面向消息的中间件,简称消息中间件。
  消息中间件连接不同应用之间的通信,将不同的通信格式转换成同一格式。从而实现不同的网络硬件平台和不同操作系统以及不同网络协议上应用程序的消息互传。它的优点在于能够在客户和服务器之间提供同步和异步的连接,并且在任何时刻都可以将消息进行传送或者存储转发,另外不会占用大量的网络带宽,可以跟踪事务,并且通过将事务存储到磁盘上实现网络故障时系统的恢复。
  2.4 基于远程过程调用中间件
  远程过程调用是一个计算机通信协议。该协议允许运行于一台计算机的程序调用另一台计算机的子程序,而程序员无需额外地为这个交互作用编程。如果涉及的软件采用面向对象编程,那么远程过程调用亦可称作远程调用或远程方法调用。
  远程过程调用是一个分布式计算的客户端-服务器的例子。远程过程调用总是由客户端对服务器发出一个执行若干过程请求,并用客户端提供的参数。执行结果将返回给客户端。由于存在各式各样的变体和细节差异,对应地衍生了各式远程过程调用协议,而且它们并不互相兼容。故基于远程过程调用的中间件就应运而生。
  2.5 面向对象的中间件
  当前开发大型应用软件通常采用基于组件技术,所谓组件就是一组对象的集成,其种类很多,有百万种,但这些组件面临着缺乏标准而不能相互操作。在有些分布式系统中,还需要集成各节点上的不同系统平台上的组件或新老版组件。为时,面向对象的中间件就产生了。
  面向对象的中间件是对象技术和分布式计算发展的产物,它提供一种通讯机制,透明地在异构的分布计算环境中传递对象请求,而这些对象可以位于本地或者远程机器。
  
  3中间件特点和优势
  
  通常意义下,中间件应具有以下的一些特点:满足大量应用的需要;运行于多种硬件和操作系统平台;支持分布式计算,提供跨网络、硬件和操作系统平台的透明性的应用或服务的交互功能;支持标准的协议;支持标准的接口。由于标准接口对于可移植性和标准协议对于互操作性的重要性,中间件已成为许多标准化工作的主要部分。
  世界著名的咨询机构The Standish Group在一份研究报告中归纳了中间件的十大优越性:(1) 减少应用开发费用;(2) 减少初期资金和运行费用;(3) 缩短开发周期;(4) 减少项目开发风险;(5) 合理运用资金;(6) 简化应用集成;(7) 减少系统维护费;(8) 保证质量;(9) 保持技术革新;(10) 增加产品吸引力。
  具体地说,中间件屏蔽了低层操作系统的复杂性,使程序开发人员面对一个简单而统一的开发环境,减少程序设计的复杂性,将注意力集中在自己的业务上,不必再为程序在不同系统软件上的移植而重复工作,从而大大减少了技术上的负担。
  
  4现状分析和展望
  
  由于网络世界是开放的、可成长的和多变的,分布性、自治性、异构性已经成为信息系统的固有特征。实现信息系统的综合集成,已经成为国家信息化建设的普遍需求,并直接反映了整个国家信息化建设的水平,中间件通过网络互连、数据集成、应用整合、流程衔接、用户互动等形式,已经成为大型网络应用系统开发、集成、部署、运行与管理的关键支撑软件。
  随着SOA(面向服务的体系架构)和Web service的发展。Web服务技术是一系列用于实现SOA的标准(或正在形成的标准)的集合。目前,Web服务技术正迅速成为SOA架构在事实上的实现标准[4]。由于面向用户,提供更高弹性、更高效率及信息整合的IT环境而被业界不断看好。但在SOA环境中,其应用组件之间是一种松耦合的关系,要让一个应用软件的组件,很容易去跟属于不同应用的软件组件进行对话,如何确保这些迥然不同,但又相互连接的系统的效率、可靠性、可控性和安全性,就复杂得多了,是SOA还没有最终解决好的问题,而这些问题正好是未来中间件所要解决的问题,致使对中间件提出了更高的要求。总之,中间件的发展前景是良好的,但是面临的挑战也是巨大的。
  
  参考文献
  [1]范国闯,钟华,黄涛.Web应用服务器研究综述[J].软件学报,2003.
  [2]张云勇,张智江,刘锦德,等.中间件技术原理与应用[M].北京:清华大学出版社,2005.
  [3]周园春,李淼,张建,等.中间件技术综述[J].计算机工程与应用,2002,15.
  [4]李彬玉.面向SOA的Web服务管理中间件的研究与实现[D].北方工业大学,2007.
其他文献
初中是学生身体发育、心智长成、知识积累、素能提升的关键时期,也是自主学习能力发展的重要阶段,在传统教学理念、教学方式仍然占据主导地位的现状下,如何有意识地在初中排球教
有了感悟生活为源泉,观察生活为基础,积累素材为保证,再加上教师的精心指导,我相信,学生的作文水平一定会有一个新的跨越!
摘要:建筑工程造价的预结算审核是控制工程造价,提高造价质量的一个重要环节。本篇文章从建筑工程造价预结算审核工作的重要性入手,深度剖析了其在工程造价管理中的作用,并对工程造价预结算审核的主要工作内容进行论述,提出了几点审核过程中需要把握的事项,以供同行参考借鉴。  关键词:建筑工程;工程造价;工程造价预结算;审核  工程造价贯穿于建筑工程的整个建设过程,并在其中发挥着重要的统领和决策作用。而工程造价
欧·亨利被誉为世界三大短篇小说的大师之一,他的小说尤其独特的语言表达艺术,这种语言风格与其丰富的人生阅历,以及对于社会上"小人物"的同情与悲悯有关。欧·亨利的
自媒体作为一种社交传播媒介和工具,为信息和舆论的传播提供平台,是人们思想观念交流的重要渠道,对高校生的学习交流、人际交往带来了很大改变,影响着高校生思想价值观的构建
论文进一步完善文化守恒的观点,文化守恒是作者多年来关于文化审美的研究课题。文化守恒的观点把文化看作一个磁场,由外部因素萌发“文化的环境规律”和“文化的理念说明”两
初中生英语阅读能力的培养,应着眼于激发兴趣、关注词义、灵活教法、读为基础,使得课堂教学事半功倍。
本文介绍应用.NET技术开发的信息采集系统的功能和关键设计,它不但能实现二代身份证信息、人像、收费项目及金额信息的采集,而且能实现相片单打、批量打印及收费小票打印。
知识经济凸显、信息化飞速发展的21世纪,其核心特征是高创新性,因而培养和造就大批高素质的人才、大力实施素质教育就成了我国人才培养的重要途径。科学能力是科学素质教育的核心,科学能力是科学素质的综合运用。化学在相当大的程度上推进了现代社会的文明和进步,对人类解决当今面临的能源危机、环境危机、资源危机和粮食危机等一系列重大挑战提供了可能的途径。如何在化学课上培养学生能力,提高学生素质,我认为有以下几方面
论文首先通过对地下室外墙易产生裂缝的现象进行了原因分析,提出了预防及修补措施。