中间件(middleware)是基础软件的一大类,属于可复用软件的范畴。顾名思义,中间件处于操作系统软件与用户的应用软件的中间。中间件在操作系统、网络和数据库之上,应用软件的下层,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件。
在众多关于中间件的定义中,比较普遍被接受的是IDC表述的:中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。
IDC对中间件的定义表明,中间件是一类软件,而非一种软件;中间件不仅仅实现互连,还要实现应用之间的互操作;中间件是基于分布式处理的软件,最突出的特点是其网络通信功能。
中科院软件所研究员仲萃豪形象地把中间件定义为:平台+通信。这个定义限定了只有用于分布式系统中的此类软件才能被称为中间件,同时此定义还可以把中间件与支撑软件和实用软件区分开来。
目前,中间件发展很快,已经与操作系统、数据库并列为三大基础软件。中间件主要分为以下几类:
1.通信处理(消息)中间件
此类中间件能在不同平台之间通信,实现分布式系统中可靠的、高效的、实时的跨平台数据传输(如Tong LINK、BEAe Link、IBM的MQ Series等)。这是中间件中唯一不可缺少的,是销售额最大的中间件产品。
2.交易中间件
在分布式事务处理系统中要处理大量事务,常常在系统中要同时做上万笔事务。例如在北京市就要设置各种运载汽车,完成日常的运载,同时要随时监视汽车运行,出现故障时,要有排除措施,发生堵塞时要进行调度。在联机事务处理系统(OLTP)中,每笔事务常常要多台服务器上的程序顺序地协调完成,一旦中间发生某种故障时,不但要完成恢复工作,而且要自动切换系统,达到系统永不停机,实现高可靠性运行;同时要使大量事务在多台应用服务器能实时并发运行,并进行负载平衡地调度,实现昂贵的可靠性机和大型计算机系统同等的功能,为了实现这个目标,要求系统具有监视和调度整个系统的功能。BEA的Tuxedo由此而著名,它成为增长率最高的厂商。一个事务处理平台,根据X/OPEN的参数模型规定,应由事务处理中间件、通信处理中间件以及数据存取管理中间件三部分组成。东方通科技公司的Tong LINK和TongEASY实现了这个参考模型规定。
3.数据存取管理中间件
在分布式系统中,重要的数据都集中存放在数据服务器中,它们可以是关系型的、复合文档型、具有各种存放格式的多媒体型,或者是经过加密或压缩存放的,该中间件将为在网络上虚拟缓冲存取、格式转换、解压等带来方便。
中间件简史
最早具有中间件技术思想及功能的软件是IBM的CICS,但由于CICS不是分布式环境的产物,因此人们一般把Tuxedo作为第一个严格意义上的中间件产品。Tuxedo是1984年在当时属于AT&&T的贝尔实验室开发完成的,但由于分布式处理当时并没有在商业应用上获得像今天一样的成功,Tuxedo在很长一段时期里只是实验室产品,后来被Novell收购,在经过Novell并不成功的商业推广之后,1995年被现在的BEA公司收购。
尽管中间件的概念很早就已经产生,但中间件技术的广泛运用却是在最近10年之中。BEA公司1995年成立后收购Tuxedo才成为一个真正的中间件厂商,IBM的中间件MQSeries也是90年代的产品,其它许多中间件产品也都是最近几年才成熟起来。国内在中间件领域的起步阶段正是整个世界范围内中间件的初创时期。东方通科技早在1992年就开始中间件的研究与开发,1993年推出第一个产品TongLINK/Q。而中科院软件所、国防科技大学等研究机构也对中间件技术进行了同步研究。可以说,在中间件领域,国内的起步时间并不比国外晚多少。
在j2ee中就是tomcat 和 weblogic 等服务器软件计算机技术迅速发展。从硬件技术看,CPU速度越来越高,处理能力越来越强;从软件技术看,应用程序的规模不断扩大,特别是Internet及WWW的出现,使计算机的应用范围更为广阔,许多应用程序需在网络环境的异构平台上运行。这一切都对新一代的软件开发提出了新的需求。在这种分布异构环境中,通常存在多种硬件系统平台(如PC,工作站,小型机等),在这些硬件平台上又存在各种各样的系统软件(如不同的操作系统、数据库、语言编译器等),以及多种风格各异的用户界面,这些硬件系统平台还可能采用不同的网络协议和网络体系结构连接。如何把这些系统集成起来并开发新的应用是一个非常现实而困难的问题。
中间件可分基础中间件和应用中间件,如weblogic,websphere为基础中间件,应用中间件更接近于业务部分,如工作流、规则等。
中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同技术之间共享资源,中间件位于基于客户/服务器的操作系统之上,管理计算机资源和网络通信。
注意:
中间件是一类软件,而非一种软件
中间件不仅实现互联,还要实现应用之间的互操作
中间件是基于分布式处理的软件,最突出的特点是其网络通信功能
中间件的基本分类:
底层型中间件
主流技术:JVM,CLR,ACE,JDBC,ODBC
代表产品:Sun JVM,Microsoft CLR
通用性中间件
主流技术:CORBA,J2EE,MOM,COM
代表产品:IONA Orbix,BEA WebLogic,IBM MQSeries
集成型中间件
主流技术:WorkFlow,EAI
代表产品:BEA WebLogic,IBM WebSphere
分享到:
相关推荐
通达OA短信服务器是一款专为通达OA(Office Automation System)系统设计的中间件软件,主要功能在于提供短信服务,以便于企业内部或与外部客户进行便捷的信息沟通。2008版本是这款服务器的一个特定迭代,可能包含了...
《服务器&中间件安全标准规范》是一份详细指导企业如何管理和保护其服务器及中间件安全的重要文档。该规范旨在确保信息安全管理的规范化,提升安全防护能力,防止信息安全事件的发生。 规范适用的范围广泛,覆盖了...
中间件可以分为数据访问中间件、远程过程调用中间件、消息中间件、交易中间件、对象中间件等。 WebSphere 是 IBM 的一套软件产品,包括 WebSphere 应用服务器、WebSphere Studio 和 WebSphere Performance Pack。它...
WAS中间件服务器介绍 WAS中间件服务器是一种在分布式系统中负责处理HTTP请求的软件,提供了一系列中间件服务,例如HTTP请求和响应的处理、应用程序会话管理、数据缓存等。它是应用程序开发人员和系统管理员的重要...
标题中的"opc中间件程序,多服务器读写"指的是一个使用C#编写的OPC中间件,其功能是实现与多个OPC服务器之间的数据读取和写入。这种中间件通常作为一个桥梁,将来自不同服务器的数据集成到一个统一的接口,方便应用...
nc65中间件配置,和各种服务器客户端环境配置,产品部署指南,多语言安装指南,数据缓存配置指南,数据库服务器参数配置,数据库优化建议,文件服务器操作手册
判断中间件的类型,比如判断服务器是否是tomcat或was 等
"Bobby Woolf:从何学习 WebSphere-应用服务器-中间件.mht"这个文件可能包含了Bobby Woolf的讲解,他是IBM的一位资深技术专家,他的指导往往深入浅出,对于理解WAS的概念和实践非常有帮助。 【中间件的作用】: ...
本手册详细介绍了中间件的部署过程,从服务器配置到中间件安装、节点配置、实例创建、应用部署等方面进行了详细的讲解。 一、服务器配置 在部署中间件之前,需要先配置服务器,包括设置主机名、修改 SSH 配置、...
首先,中间件的种类繁多,包括消息中间件、交易中间件、应用服务器、数据库连接池等。中创中间件可能涵盖了这些类别中的一个或多个,以满足不同业务场景的需求。例如,消息中间件允许异步处理,提高系统的响应速度和...
这一节我们主要来学习一下什么是中间件,为什么使用中间件和主要中间件的分类。 中间件是什么 中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/ ...
中间件分类及标准 中间件是一类特殊的软件,位于操作系统和应用软件之间,负责实现不同系统之间的互操作和数据交换。随着信息技术的发展,中间件的重要性日益凸显,已经成为当前软件技术的热点。鉴于中间件的定义和...
4. **domains.xml**:域配置文件,用于定义和管理中间件服务器上的不同域(Domain),每个域可以看作是一个独立的服务器环境,可以配置不同的应用和服务。 5. **bin**:这个目录包含了可执行文件和脚本,比如启动、...
中标麒麟高级服务器操作系统 V6.5 安装东方通 5.0 中间件操作及配置手册 中标麒麟高级服务器操作系统 V6.5 安装东方通 5.0 中间件操作及配置手册是指在中标麒麟高级服务器操作系统 V6.5 环境下安装和配置东方通 5.0...
中间件是独立的系统软件或服务程序,分布应用软件借助这种软件在不同技术之间共享资源,中间件位于客户机、服务器的操作系统之上,管理计算机资源和网络通信。中间件技术的出现极大地改变了软件开发和应用的方式,...
它位于客户端/服务器的操作系统之上,负责管理和协调计算机资源及网络通讯。中间件的关键作用在于实现不同系统之间的互操作性,使得异构系统能够有效地交换信息。例如,`CORBA`、`JMS`等都是常见的中间件技术。 6. ...
《应用服务器中间件技术要求》文档详述了对应用服务器中间件的一系列技术指标和功能需求,涵盖了标准兼容性、平台支持、数据库兼容性、集群与可用性、安全性、管理和开发等多个方面。以下是对这些要求的详细解读: ...
无线移动中间件的特点主要包括其能够在无线网络条件下,支持移动设备与后端服务器之间的通信,保证数据的实时传输与同步,同时还需处理移动网络的不稳定性,如信号的强弱变化和频繁的断线重连问题。此外,它还应提供...
QuickBurro中间件服务器是一种专为分布式系统设计的软件组件,它在应用程序之间提供数据交换和服务协调的功能。作为中间件,QuickBurro旨在简化不同应用之间的通信,促进系统的可扩展性和灵活性。通过处理消息传递、...
在很多网络应用中,尤其那些服务器有时不在线的应用中,将客户端的数据变更按照产生顺序同步到服务器的操作是比较复杂的。为了解决这种问题,可以采用消息中间件产品(例如Windows的MSMQ还有IBM的MQ),但是这种产品...