您好, 访客   登录/注册

基于中间件技术的讨论

来源:用户上传      作者: 刘杰

  中间件(Middleware)是近几年以来,计算技术逐步进入以网络为中心的时期,用户迫切希望在网络上建立更为丰富的分布式客户/服务器应用;不仅实现数据共享,而且支持知识共享和各类计算资源的共享;并能实现包括整个企业在内的各个层次的协同工作。中间件在系统应用的层次信息结构中,它处于操作系统和用户应用之间,对应于程序来说,其主要作用是屏蔽操作系统的异构和实现稳定应用的支撑环境以便于不同系统之间的信息交换,编程时可以利用中间件产品提供的跨平台、统一的接口、来回避操作系统的差异,这在提高应用程序的可移植性的同时也缩短了应用开发的周期。
  在此基础上,为解决大型应用系统集成性与可扩展性间的矛盾,中间件Middleware)技术应运而生。中间件是软件中介于在应用层和网络层之间的一个功能层次,使应用系统独立于异构的操作系统、硬件平台与通信协议组成的底层环境。
  一、中间件的概念
  中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,使处于应用层中的各应用成分之间实现跨网络的协同工作,也就是互操作,这就允许各应用成分之下所涉及的系统结构、操作系统、通信协议、数据库和它应用服务各不相同。中间件位于客户机/服务器的操作系统之上,管理计算资源和网络通信,其核心思想是分层,通过在应用层与底层基础软件间增加一层,屏蔽底层复杂的技术细节,实现对底层的透明访问,为应用的开发与管理提供支持中间件位于客户机/服务器的操作系统之上,分布式应用之下,管理计算资源和网络通信。中间件是一类基于分布式技术的系统软件或软件平台,而非一种应用软件,涉及多种资源,包括各种操作系统、数据库、网络协议甚至语言,其核心是网络通信。其目标是在分析计算环境中实现应用互联、资源共享、协同工作和互操作中间件是位于平台(硬件和操作系统)和应用之间的通用服务,这些服务具有标准的程序接口和协议。针对不同的操作系统和硬件平台,它们可以有符合接口和协议规范的多种实现。
  中间件用以提供客户机与服务器之间的连接服务,中间件系统管理着客户端程序和数据库或应用软件之间的通讯,而且中间件在分布式客户和服务之间起着承上启下的角色,象事务管理、负载均衡以及Web的计算等。
  二、中间件特性分析
  网格系统可分为三个基本层次,即资源层、中间层,应用层、网格资源是构成网格系统的硬件基础,它包括各种计算资源,象超级计算机,各种仪器,可视化设备及现有的应用软件等。这些计算资源通过网络设备连接起来,而网格资源层仅仅实现了计算在物理上的连接,但从逻辑上看,这些资源仍然是孤立的,资源问题仍然没得到解决。因此,必须在网格资源基础上通过网格中间层,来定成广域计算资源的有效共享。网格中间层是指一系列工具和协议软件其功能是屏蔽网格资源层中计算的分布、异构性、向网格应用层提高透明、一致的使用接口,网络中间层也称为网格操作系统(Grid operading system)它同时需要提高用户编程接口和相应的环境,以支持网格应用的开发。网格应用层是用户需求的具体体现,而Agent技术起源于分布式人工智能的研究,Agent技术强调软件的分布性、自治性、智能性的特点,非常适合应用网格中间件技术中来,能提高网格中间件的智能性,优化网格的性能。随着网络应用的广泛性、复杂性的空前提高,网格中间件技术也必然的很快的发展完善起来。为适应上述要求,分布对象技术成为分布式计算环境发展的主流方向。其技术特点为
  1、主要针对异构环境下的应用互操作问题;
  2、系统核心的对象管理将客户/服务器模型与面向对象技术结合在一起;
  3、提供面向对象的API;
  4、已经成为建立集成框架和软件部件标准的核心技术。
  但是,我们也仍当看到当前制约网络化信息系统高效开发和有效运行的瓶颈是缺乏系统的Web services平台的有力支持,随着国民经济和社会发展信息化进程的逐步深入,迫切需要网络软件支持平台和中间件技术。
  三、中间件的现状与发展动态
  中间件的产生和发展与客户机/服务器的结构的发展是紧密结合的,近几年来,随着数据库应用的发展,传统客户机/服务器结构的缺点日益明显,比如可扩展性差,对于分布式处理能力差等。中间件技术是在克服复杂网络应用的共性问题中不断发展壮大起来的,这些问题可归纳为几个方面:
  1、从计算环境来看,中间件面对的是一个复杂,不断变化的计算环境,所以要求中间件技术具有足够的灵活性和成长性。
  2、从资源管理的角度上看,操作系统和数据库管理系统管理的是有限资源,资源种类有限,而中间件需要管理的资源类型(数据、服务、应用)更丰富,且资源扩展的边界是发散的。
  3、从应用支撑角度来看,中间件需要提供分布应用开发、集成、部署和运行管理的整个周期的总体运用模型
  4、从应用的角度来看,利用中间件完成的往往是复杂、大范围企业级的应用,其关系错综复杂、流程交织,例如客户关系管理系统需要集成多个企业内部应用,而供应链管理涉及企业之间的应用集成。
  目前的中间件技术已形成一个谱系,正在向上(应用框架、普适服务)和向下(融合操作系统、数据库管理系统功能)两个方向延伸,向更广阔的领域拓展。
  中间件的一个发展动向是向Inter net的延伸,典型的应用是服务技术,尽管Internet/Intranet技术已在全球范围普及,但由于其自身的技术特点,在构造许多大型企业级应用(如金融、电信等)时仍面临诸多问题,如并发控制,负载均衡,可靠传输,数据路由等,三层和N层计算的发展,为应用服务器技术带来契机,而当前Web技术和应用服务器的结合是新的热点。
  基于这一发展动向和Web技术的飞速发展,中间件当前所面临的重大挑战就是要在互联网,这个复杂的分布式系统中构建应用程序。如何更好地利用中间件为企业级服务,成为今后发展的方向,中间件具有平台功能,能够屏蔽底层操作系统及网络传输的复杂性,能减少程序设计地复杂性和开发技术上的难度,缩短了开发的周期,未来的中间件必将和网络技术紧密相关。
  四、结束语
  随着计算机应用及Internet 的飞速发展和普及,信息量的不断扩大和网络应用规模的日益发展, 结构日趋复杂化、多样化,越来越多的客户机/服务器引入了中间件技术,中间件技术必将会得到更加快速的发展。


转载注明来源:https://www.xzbu.com/9/view-56896.htm