基于分布式应用的中间件.docVIP

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于分布式应用的中间件.doc

基于分布式应用的中间件:作用与分类 [日期:2006-05-31] 来源:? 作者: [字体:大 中 小] 陈国良 ? ? 摘? 要? 中间件是分布式应用中最为关键的部分,通过对分布式应用的开发者隐藏底层信息,屏蔽网络和分布式应用的复杂性,并为网络和分布式应用提供相应的服务,使得开发者可以集中致力于应用逻辑。本文在综合定义的基础上,基于中间件所提供的服务综述了中间件的基本作用以及基本分类,并结合当前研究对中间件的发展趋势进行了展望。 关键词? 中间件 ,分布式计算 一、引 言 网络和硬件技术的飞速发展,极大地提高了计算机系统的通讯能力。但是,由于分布式应用程序绝大多数都是在网络环境的异构平台上运行,使得网络和分布式应用的开发、测试和移植中所投入的代价非常高。 在未使用中间件而使用操作系统、网络和数据库直接开发分布式应用程序时,开发者必须面对很多实际困难,包括:(1)复杂性:由于直接面对底层复杂系统,需要处理繁琐的底层信息;(2)异构性:由于操作系统、硬件平台、网络结构和数据库系统的复杂多样性,为适应不同的应用平台,同一软件需要进行大量的兼容性开发,加大了软件开发工作量和复杂程度;(3)数据分布:分布式系统中的数据分布导致如数据的安全性、一致性、效率、性能等问题;(4)重复性:应用之间存在部分相似性,为此需要耗费大量的时间和精力来重复同样的工作。针对上述困难和问题,可行的解决方法是将软件开发中的共同模式进行抽象和提炼,形成可复用的构件,以利于应用软件的重用,由此产生了中间件[1]。使用具有高度灵活性、有效性、可靠性和安全性的中间件可以大大减轻开发分布式应用的复杂性和代价。 二、中间件的基本定义 由于划分的标准不同,目前对于什么是中间件并没有准确而统一的定义。 在综合现有研究成果的基础上[2][3],我们可以给出如下的关于中间件的完整性定义,即:中间件是位于应用软件与系统基础软件之间的独立的具有相应层次的系统软件或通用服务,通过提取可重用的应用模式以及对标识、认证、授权、目录、安全性等服务的标准化和互操作,为应用提供统一的标准化程序接口和协议,隐藏底层硬件、操作系统和网络的异构性,统一管理网络资源的网络通信,灵活高效地开发分布式应用。 由此定义不难看出,中间件具有如下基本特征:(1)独立性:独立于应用程序和系统软件,保证应用程序接口的稳定性;(2)标准化:支持标准的协议和接口,用来实现互连和应用之间的互操作;(3)层次化:本身具有的一定的层次,构成中间件的层次开发结构;(4)透明性:支持分布计算,提供跨网络、硬件和操作系统的透明性;(5)领域相关性:针对不同的应用领域,需要与应用领域相适应的中间件。 三、中间件的基本作用 ?? 对于应用软件开发,中间件远比操作系统和网络服务更为重要。中间件的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件,通常用于系统内部数据库与应用之间的消息传递处理和格式转换,在一些情况下,也可以用于解决两个系统之间的消息传递处理、格式转换等问题[4]。 中间件带给应用系统的,不只是开发的简便、开发周期的缩短,也减少了系统的维护、运行和管理的工作量,还减少了计算机总体费用的投入。其次,中间件作为新层次的基础软件,其重要作用是将不同时期、不同操作系统上开发应用软件集成起来像一个天衣无缝的整体协调工作。这是操作系统、数据库管理系统本身做不了的,从而节约了大量的人力,财力投入。另外,在越来越热的电子商务领域,中间件依然大有作为。中间件可以用来广泛地集成电子商务中的各种应用,支持大量Internet客户的并发访问,使应用开发商快速开发出灵活多变的电子商务应用,并尽快把信息系统和商务活动放到Internet中。 中间件的作用具体体现在它所提供的服务上,主要包括: 1. 通讯服务 目前的操作系统都支持网络编程接口,但是这些接口通常都是底层的并且非常复杂而不利于使用。中间件则对分布式应用的开发者屏蔽了复杂的底层网络编程细节。 由于中间件需要屏蔽分布环境中操作系统和网络协议的异构性,因此它必须能够提供分布环境下的通讯服务。基于目的和实现机制的不同,应用间的分布式通讯包括以下三类:远程过程调用RPC、消息和对象请求代理ORB。在这些基本的通讯平台之上,可以构筑各种框架,为应用程序提供不同领域内的服务,如事务处理监控器、分布数据访问、对象事务管理器OTM等。 2. 并发性服务 基于中间件的应用必须具有高度可扩展性,通常以每秒所处理的请求或消息的数量来衡量。这种要求在系统中保证最大化的并发性,这样就可以同时执行尽可能多的任务。中间件系统使用很多技术和模式来增强并发性,例如在服务器进程中采用多线程技术,多线程技术允许中间件子系统最大化网络连接的处理以及达到这些连接的请求和消息的处理等

您可能关注的文档

文档评论(0)

000 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档