中间件技术的概念及发展
顾名思义,中间件是处于应用软件和系统软件之间的一类软件,是独立于硬件或数据库厂商(处于其产品的中间,实现其互连)的一类软件,是客户方与服务方之间的连接件,是需要进行二次开发的中间产品。
应该说,中间件技术是伴随网络而发展起来的一种面向对象的技术。以前的计算机系统多是单机系统,多个用户是通过联机终端来访问的,没有网络的概念。网络出现后,产生了Client/Server的计算服务模式,多个客户端可以共享数据库服务器和打印服务器等等。随着网络的更进一步发展,许多软件需要在不同厂家的网络产品、硬件平台、网络协议异构环境下运行,应用的规模也从局域网发展到广域网。在这种情况下,Client/Server模式的局限性也就暴露出来了,于是中间件应运而生。中间件是位于操作系统和应用软件之间的通用服务,它的主要作用是用来屏蔽网络硬件平台的差异性和操作系统与网络协议的异构性,使应用软件能够比较平滑地运行于不同平台上。同时中间件在负载平衡、连接管理和调度方面起了很大的作用,使企业级应用的性能得到大幅提升,满足了关键业务的需求。
当前支持服务器端中间件技术的平台
考察当前主流的分布计算技术平台,主要有OMG的CORBA、Sun的J2EE和Microsoft DNA 2000。它们都是支持服务器端中间件技术开发的平台,但都有其各自的特点,将分别阐述如下。
1.OMG的CORBA
CORBA分布计算技术是OMG组织基于众多开放系统平台厂商提交的分布对象互操作内容的基础上制定的公共对象请求代理体系规范。
CORBA 分布计算技术,是由绝大多数分布计算平台厂商所支持和遵循的系统规范技术,具有模型完整、先进,独立于系统平台和开发语言,被支持程度广泛的特点,已逐渐成为分布计算技术的标准。COBRA标准主要分为3个层次:对象请求代理、公共对象服务和公共设施。最底层是对象请求代理ORB,规定了分布对象的定义(接口)和语言映射,实现对象间的通讯和互操作,是分布对象系统中的"软总线";在ORB之上定义了很多公共服务,可以提供诸如并发服务、名字服务、事务 (交易)服务、安全服务等各种各样的服务;最上层的公共设施则定义了组件框架,提供可直接为业务对象使用的服务,规定业务对象有效协作所需的协定规则。目前,CORBA兼容的分布计算产品层出不穷,其中有中间件厂商的ORB产品,如BEAM3,IBM Component Broker,有分布对象厂商推出的产品,如IONAObix和OOCObacus等.
CORBA规范的近期发展,增加了面向Internet的特性,服务质量控制和CORBA构件模型(CORBA Component Model)。
Internet集成特性包括了针对IIOP传输的防火墙(Firewall)和可内部操作的定义了URL命名格式的命名服务(Naming Service)。
服务质量控制包括能够具有质量控制的异步消息服务,一组针对嵌入系统的CORBA定义,一组关于实时CORBA与容错CORBA的请求方案。
CORBA CCM(CORBA Component Model)技术,是在支持POA的CORBA规范(版本2.3以后)基础上,结合EJB当前规范的基础上发展起来的。CORBA构件模型,是OMG组织制定的一个用于开发和配置分布式应用的服务器端中间件模型规范,它主要包括如下三项内容:
a.抽象构件模型,用以描述服务器端构件结构及构件间互操作的结构;
b.构件容器结构,用以提供通用的构件运行和管理环境,并支持对安全、事务、持久状态等系统服务的集成;
c.构件的配置和打包规范,CCM使用打包技术来管理构件的二进制、多语言版本的可执行代码和配置信息,并制定了构件包的具体内容和基于XML的文档内容标准。
总之,CORBA的特点是大而全,互操作性和开放性非常好。CORBA的缺点是庞大而复杂,并且技术和标准的更新相对较慢,COBRA规范从1.0升级到2.0所花的时间非常短,而再往上的版本的发布就相对十分缓慢了。在具体的应用中使用不是很多。
文章来源于领测软件测试网 https://www.ltesting.net/