中间件基础知识 1. 中间件的概念:中间件是在操作系统(数据库管理系统)与应用系统之间的一层软件,通常为分布式应用的开发、部署、运行于管理提供支持
2. 中间件的发展过程:在操作系统出现之前,计算机的初始组成就是“硬件+程序”,即程序直接运行在裸机硬件智商。此时,应用程序直接控制硬件的各种运行细节,应用程序中存在大量的代码用于管理各种物理器件,已访问数据为例,程序必须控制怎样连接磁盘,如何读取其中的数据,如何处理各种异常情况等。这使得程序代码十分庞大,而且正确性难以保证。随着计算机应用的日益广泛,程序的规模不断增大,软件开发变得越来越困难。在这种背景下,人们进行了软件共性的第一次抽取,即抽取出了程序的共性(稳定)成分——初期的操作系统被称为管理程序或监督程序,提供大量的与硬件相关的代码(系统调用)来完成上层应用程序的各种请求,隐藏了与硬件相关的程序执行过程的复杂性,从而简化了应用程序的开发。毕业论文
操作系统形成之后,计算机的组成编程了“硬件+操作系统+应用程序”。此时,应用程序中访问的数据和应用程序一样以简单文件的方式存储,应用程序的开发人员需要了解数据的具体组织格式,并且需要自己编写程序解决完整性等相关问题。随着应用程序处理的数据规模越来越大,应用程序中数据管理这一共性也越来越明显,即应用程序中普遍存在大量代码实现数据管理功能。于是人们进行了软件共性的第二次抽取,即抽取出了程序的共性(稳定)成分——数据管理,此次共性的抽取导致了数据库管理系统的产生,分离出了应用软件。数据库管理系统对数据进行统一的管理和控制,并保证了数据库的安全性和完整性,为用户屏蔽系统关于数据存储和维护等的细节,从而再次简化了应用程序的开发。
类似的工作仍在继续,在软件系统规模与复杂度不断提高的同时,人们不断从应用软件中提取共性、降低高层复杂性,最终导致了中间件的产生。(大篇幅的介绍了中间件的产生,是为了让我们更深刻的理解中间件为何出现,了解了中间的发展对中间件的学习会有很大的帮助) 3. 分布式系统:就是将系统的应用层,数据层或其它部分构架成分布(物理和逻辑上的都可以)状(通常是网状)。分布式系统通常是为了增强系统的可扩展性、稳定性和执行效率。
3. CORBA:目前比较适合对于互操作要求较高、基于异类环境的分布式系统开发,这类系统的核心特征是系统核心业务逻辑构件之间(而不是界面构件与业务逻辑构件之间或业务逻辑构件与数据库之间)的频繁跨越网络交互是系统需要解决的主要问题之一;另外CORBA灵活的服务端模型与丰富的系统级服务也使得CORBA中间件成为支撑分布式系统中间层开发的有力候选者之一。相比之下,由于在人机界面支持、持久化支持等方面的欠缺,CORBA中间件在支撑以数据库和核心的Web信息系统开发时显得支撑不够全面,而Java企业版或Net中间件的优势更为明显。
4. EJB:是J2EE中具有代表性的中间件,EJB是sun的服务器端组件模型,设计目标与核心应用是部署分布式应用程序。凭借java跨平台的优势,用EJB技术部署的分布式系统可以不限于特定的平台。EJB (Enterprise JavaBean)是J2EE的一部分,定义了一个用于开发基于组件的企业多重应用程序的标准。
|