云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 中间件技术概述

中间件技术概述

  • 62 次阅读
  • 3 次下载
  • 2025/12/11 2:45:56

规范中,增加了对实时应用和嵌入式应用的支持,而特定于无线应用的移动中间件、支持网格计算的中间件也是目前的研究热点。

其三,中间件也开始考虑对高层设计和应用部署等开发工作的支持,如,CORBA和RMI提供了支持基于构件的软件开发的CCM和EJB构件模型,J2EE提出了包括构件开发、构件组装、应用部署等在内的基于构件的软件开发过程模型,OMG提出的模型驱动体系(Model-Driven Architecture)则考虑如何利用UML更有效地开发基于中间件的应用系统。对于目前的AOP(Aspect Oriented Programming),中间件由于其封装的共性特征及其动态配置能力,成为支持侧面动态编织的主流支撑平台。

5. 思考与探讨

5.1. 关于中间件发展驱动力的思考

1) 从软件形态看中间件的发展

软件是客观世界中问题空间与解空间的具体描述,其基本模型为实体元素以及这些元素之间的连接和交互。考察软件基本模型的发展,汇编语言(机器语言)的基本单元是指令,指令的序列构成程序,其控制机制主要是顺序和转移;高级语言则通过顺序、循环和条件等三种基本控制结构来控制高级语句,而函数(过程)等程序元素增大了实体元素的粒度;近20年来,面向对象程序设计语言的诞生并逐步流行,为人们提供了一种以对象为基本计算单元,以消息传递为基本交互手段的软件模型,该模型以拟人化的观点来看待客观世界(客观世界由一系列对象构成,这些对象间的交互就形成了客观世界的活动),符合人们的思维模式和现实世界的结构;对软件复用的关注,又使得人们试图寻找比对象粒度更大、更易于复用的基本单元,因而面向构件的计算模型被视为新一代的软件模型。

网络的出现与普及,使得编程语言提供的基本通信机制无法支持软件模块之间的远程交互,由此导致了中间件的产生。此外,软件自身的日益复杂导致软件模块之间的交互也变得复杂,为此,中间件不得不提供越来越多的

功能以屏蔽交互的复杂度,如,异步通信、组通信、并发、安全、事务等复杂功能成为中间件必备的高级特征,而Web Services更是考虑到了交互之间的时序约束以及多个模块交互之间的全局约束。因此,从软件形态的角度看,中间件主要解决软件模块之间的交互问题。 2) 从软件本质看中间件的发展

在整个信息技术体系中,微电子是基础,计算机和通信设施是载体,软件则是核心。如何更高效地发挥硬件资源所提供的计算能力,是软件技术发展的主要驱动因素之一。以操作系统为例,随着计算机硬件的发展,单机操作系统从最初的引导程序,发展到管理诸多硬件资源的管理程序,进而产生发挥CPU与外设作用的多道程序,直至今日追求软硬件高效利用的资源管理系统。

随着通信设施的发展,如何高效、经济地发挥通过网络互联、种类繁杂、数量众多的硬件资源的计算能力,导致了中间件的产生。除了经典的远程通信问题,越来越多的与硬件相关的问题及其解决方案也开始在中间件中得以体现,如,实时中间件(realtime middleware)重点考虑现实世界严格的时间约束问题,嵌入式中间件(embedded middleware)着重解决嵌入式设备计算能力较弱、存储空间较小、网络带宽有限、电源供应不足等问题,而移动计算中间件(mobile middleware)则提供位置敏感、断连操作等支持。因此,从软件本质的角度看,中间件也可视为“网络操作系统”。 3) 从软件开发看中间件的发展

软件开发是典型的知识密集型活动,复杂度高、开发周期长、可靠性难以保证。尽可能多地凝练共性并复用,是提高软件开发效率和质量的主要途径。从共性凝练的角度看,操作系统将管理硬件资源、控制程序运行等直接作用于裸机的共性问题提取出来,简化应用对计算机的管理和使用;而中间件则将网络环境下应用开发经常遇见的共性问题,如通信、安全、事务等,以及特定于某些领域的问题,如电信中的事件过滤与通告、音视频传输、运输领域的空中交通管制、制造领域的计算机辅助设计、生命科学领域的基因表达等抽取出来,大大简化了网络应用的开发和维护。

随着可复用共性的增多,软件开发也逐步从手工作坊式向软件工业化生产演变。典型的工业化软件生产技术包括终端用户编程、模型驱动开发和随需即取等。终端用户编程允许用户在无需掌握复杂的编程语言和过多的技术细节的条件下,可以快速开发出满足需求的软件。在模型驱动开发中,用户只需关注高层建模,复用包含复杂技术细节的低层模型,即可自动生成代码。随需即取则根据用户需求,由服务提供商快速正确地构造出相应服务。在这些工业化软件生产技术中,中间件都扮演了极为重要的“基础设施”的角色。因此,从软件开发的角度看,中间件是一种高效实用的共性凝练与复用手段。 4) 从软件市场看中间件的发展

市场竞争、技术升级以及保护投资等因素往往导致软硬件的异构,而市场合作以及系统升级又要求解决异构问题。回顾软件技术的发展,操作系统从某种程度而言,屏蔽了计算机硬件的异构性;为了屏蔽操作系统和编程语言的异构性,产生了支撑软件和中间件。中间件的发展和多样化导致了中间件的异构性,由此产生了Web Services。另一方面,从产品为中心转向服务为中心的“软件即服务”以及“业务按需即取”等新型市场模式,均依赖于中间件技术的支撑。

从软件产业的角度,采用中间件技术和产品可有效缩短应用解决方案进入市场的时间,提高解决方案的竞争力,其大量的开发与使用可有效提高软件企业的产品质量和生产效率。从技术的角度而言,中间件技术和产品包含了对Internet平台的抽象、开放应用模式和结构的理解、基础的程序设计模型、新型软件方法学等多项软件核心技术,是Internet环境下众多软件新方法和新技术的综合载体。从产品角度而言,中间件是处在经典系统软件和应用系统之间的一组软件,它们不仅可在多种主流平台上运行,对现行的主流软件技术和产品具有良好的兼容性,还能够适应Internet多样性特征、开放性应用的多样性特征和多种用户的个性化需求。因此,从软件市场的角度看,中间件使得各种软硬件技术与产品能够适应各种市场模式或策略。

5.2. 关于中间件未来趋势的探讨

从前面对中间件研究现状与发展趋势的介绍以及驱动力的探讨可见,Internet平台和环境的出现及其发展,对中间件近十多年的研究与实践起到了决定性的影响。无疑,Internet在未来5-15年内将得到进一步的普及和发展,因此,本文将以Internet为背景探讨中间件的未来趋势。

Internet作为不同于传统计算机的硬件平台,具有如下基本特征:无统一控制的“真”分布性;节点的高度自治性;节点链接的开放性和动态性;人、设备和软件的多重异构性;实体行为的不可预测性;运行环境的潜在不安全性;使用方式的个性化和灵活性;网络连接环境的多样性。由于软件系统所基于的计算机硬件平台正经历从集中封闭的计算平台向开放的Internet平台的转变,软件系统作为计算机系统的灵魂,随着其运行环境的演变也经历了一系列的变革。目前,面向网络的计算环境正由Client/Server发展为Client/Cluster,并正朝着Client/Network和Client/Virtual Environment的方向发展。那么,未来的基于Internet平台的软件系统又将会呈现出一个什么形态呢?

从技术的角度看,以软件构件等技术支持的软件实体将以开放、自主的方式存在于Internet的各个节点之上,任何一个软件实体可在开放的环境下通过某种方式加以发布,并以各种协同方式与其它软件实体进行跨网络的互连、互通、协作和联盟,从而形成一种与当前的信息Web类似的Software Web。Software Web不再仅仅是信息的提供者,而是各种服务(功能)的提供者。由于网络环境的开放与动态性,以及用户使用方式的个性化要求,从而决定了这样一种Software Web并不能够像传统软件那样一蹴而就,它应能感知外部网络环境的动态变化,并随着这种变化按照功能指标、性能指标和可信性指标等进行静态的调整和动态的演化,以使系统具有尽可能高的用户满意度。本文将这样一种新的软件形态称为网构软件(Internetware)。

网构软件是在Internet开放、动态和多变环境下软件系统基本形态的一种抽象,它既是传统软件结构的自然延伸,又具有区别于在集中封闭环境下发展起来的传统软件形态的独有的基本特征:自主性、协同性、反应性、演化性、多态性。

综上所述,Internet及其上应用的快速发展与普及,使计算机软件所面临的环境开始从静态封闭逐步走向开放、动态和多变。软件系统为了适应这样一种发展趋势,将会逐步呈现出柔性、多目标、连续反应式的网构软件系统的形态。这种新型的软件形态将使系统软件和支撑平台的研究重点开始从操作系统等转向新型中间件平台,而网构软件的理论、方法和技术的突破必将导致在建立新型中间件平台创新技术方面的突破。

6. 总结

中间件技术是构造分布式应用和系统集成的关键,本文讨论了中间件技术的国内外研究现状、关键技术及发展趋势。同时,作为该系列报告中一篇关于软件中间件的文章,本文还介绍了中间件的基本概念、主要特征、历史回顾等基础知识。最后,本文从软件形态、软件本质、软件开发、软件市场等四个角度考察了中间件技术发展的驱动力,并以Internet为背景,探讨了未来5-15年中间件的发展趋势。

搜索更多关于: 中间件技术概述 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

规范中,增加了对实时应用和嵌入式应用的支持,而特定于无线应用的移动中间件、支持网格计算的中间件也是目前的研究热点。 其三,中间件也开始考虑对高层设计和应用部署等开发工作的支持,如,CORBA和RMI提供了支持基于构件的软件开发的CCM和EJB构件模型,J2EE提出了包括构件开发、构件组装、应用部署等在内的基于构件的软件开发过程模型,OMG提出的模型驱动体系(Model-Driven Architecture)则考虑如何利用UML更有效地开发基于中间件的应用系统。对于目前的AOP(Aspect Oriented Programming),中间件由于其封装的共性特征及其动态配置能力,成为支持侧面动态编织的主流支撑平台。 5. 思考与探讨 5.1. 关于中间件发展驱动力的思考 1) 从软件形态看中间件的发展 软件是客观世

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com