软件平台与中间件技术2010-2.doc_第1页
软件平台与中间件技术2010-2.doc_第2页
软件平台与中间件技术2010-2.doc_第3页
软件平台与中间件技术2010-2.doc_第4页
软件平台与中间件技术2010-2.doc_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2章 中间件概念、定义及发展情况目前,分布式计算技术得到了非常广泛的应用,这是因为首先分布式计算的互连性有助于改善软件的互操作性;其次,通过采用并行处理技术提高了软件的性能,并通过副本技术提高其可靠性和有效性;另外,由于采用了模块化技术,分布式计算还显著改善了软件的伸缩性和可移植性;同时,分布式计算的资源共享与开放系统特性提高了系统的性价比。但是,开发一个分布式应用软件系统,并使其各部分能可靠有效地协调工作则是一项困难的工作。原因有三:由于开发分布式应用软件的常规工具和技术自身的局限性,使分布式应用的开发复杂化;分布式应用的开发大量采用了功能分解技术,而当前常规的面向功能编程技术开发应用软件时往往会导致所生成的系统结构缺乏可扩展性,从而进一步增加了应用软件开发的复杂性;由于工程上的考虑和对原系统的继承问题,使分布式应用大多基于异构平台,而如何将这些异构环境集成在一起牵涉到许多复杂的技术手段,显得困难重重。2.1 中间件技术发展的应用需求中间件技术的发展来源于以下几个应用需求驱动点:消息驱动(Message Driving):基于统一消息表示,采用点到点或消息代理集成结构,实现数据资源共享;应用驱动(Application Driving):基于基础通信中间件和构件管理平台,实现应用连接;流程驱动(Process Driving):支持企业流程再造,加速客户、供应商、合作伙伴和员工之间的动态电子商务进程;用户驱动(User Driving):通过统一的界面访问所需要的任何信息,并控制应用的运行,从而加强协作,实现系统功能的快速扩展;模型驱动(Model Driving):为企业应用开发和管理人员提供可视化的布局和设计能力,为开发者建立、发布和管理集成的应用和服务提供全面的支撑;知识驱动(Knowledge Driving):基于商业智能技术,结合企业数据资源、业务逻辑和业务流程,解决企业的信息过剩问题导致的决策难题。随着中间件在信息化建设中的广泛应用,中间件应用需求还表现出以下一些新的特点: 可成长性:Internet是无边界的,中间件必须支持建立在Internet之上的网络应用系统的生长与代谢,维护相对稳定的应用视图。 适应性:环境和应用需求不断变化,应用系统需要不断演进,作为企业计算的基础设施,中间件需要感知、适应变化,提供对下列环境的支持: 支持移动、无线环境下的分布式应用,适应多样性的设备特性以及不断变化的网络环境;支持流媒体应用,适应不断变化的访问流量和带宽约束;在分布式实时环境下,适应强QoS的分布式应用的软硬件约束;能适应未来还未确定的应用要求。可管理性:领域问题越来越复杂、IT应用系统越来越庞大,其自身管理维护则变得越来越复杂,中间件必须具有自主管理能力,简化系统管理成本。面对新的应用目标和变化的环境,支持复杂应用系统的自主再配置;支持复杂应用系统的自我诊断和恢复;支持复杂应用系统的自主优化;支持复杂应用系统的自主防护。 高可信性:提供安全、可信任的信息服务支持大规模的并发客户访问;提供99.99以上的系统可用性;提供安全、可信任的信息服务。在分布式应用软件的开发过程中,中间件技术得到了越来越广泛的重视,因为中间件所提供的平台透明性、通信协议透明性、硬件无关性,可以有效地降低分布式软件开发的复杂性及成本,提高软件的复用率。2.2 中间件的概念2.2.1 计算模式的发展过程迄今为止,网络计算机模式的发展经历了3个阶段:以大中型机为中心的计算模式、以服务器为中心的计算模式和客户机服务器(ClientServer)计算模式。以大中型机为中心的计算模式称为分时共享模式,它是采用大中型机作为主机并配备多个终端组成一个系统。这种模式是利用主机的能力,主机是系统的核心,一旦主机出了故障,整个系统便瘫痪。以服务器为核心的计算模式则是通过网络将多台计算机相连,以实现资源共享,故此模式亦称为资源共享模式。这一模式是利用各站点的能力对所有应用进行运行,用服务器的能力作为外设的延伸。客户机服务器模式由客户机、服务器和连接部件3部分组成。在此模式下,应用被分为前端(客户端)和后端(服务端)两部分。客户部分运行在微机或工作站上,而服务器部分则可运行在微机、小型机、中型机或大型机的各种计算机上。虽然客户机和服务器工作在不同的逻辑实体中,但它们却能协同工作。客户机服务器模式的最大特点是系统使用客户机和服务器的智能、资源和计算能力来共同执行一个特定的任务。2.2.2 基于中间件的软件系统如图2-1所示:应用软件中间件协议语言工具数据库系统中间件操作系统硬件网络图2-1 基于中间件的软件系统的基本模型从上图可以看到,中间件是处于操作系统与应用软件之间的一层服务,它不是特定于某一具体应用,而是针对通用应用或某类应用提供公共服务的软件。因此,它将所有应用需要的基础性通用服务从应用中分离出来,封装成独立的软件产品供应用开发者使用。一方面,应用软件通过它屏蔽了操作系统、数据库管理系统与网络协议的差异,使应用开发者不必关注底层的技术细节,使得应用开发快捷方便而且易于移植;另一方面,由于中间件以统一封装的商品化质量的软件形式提供这些通用的基础服务,使得基于中间件产品的应用软件性能稳定、维护性好,同时,也使应用软件更易适应业务变化的需要。也正因为中间件需要屏蔽不同平台与协议的差异性,因此中间件对于不同的硬件、不同的操作系统、不同的数据库管理系统、不同的网络协议有不同的实现形式。2.2.3 C/S结构模型与中间件在C/S结构中,所有网络节点可划分为客户机和服务器两类。C/S结构由四个部分组成,包括:用户界面、表现逻辑、事务逻辑和数据访问,如图2-2所示: 图2-2 C/S结构模型客户端通常包括用户界面和表现逻辑,其中,用户界面主要完成应用的前端处理及末端交互,诸如屏幕格式显示、键盘处理等,它不能直接访问数据库中的数据;表现逻辑则向各种应用提供一个统一的数据库访问接口。服务器端通常包括事务逻辑和数据访问,其中事务逻辑主要完成数据的安全性及事务的完整性等管理工作,它可跨越多个服务器协同操作。C/S应用开发与一般应用开发的不同之处是将事务逻辑放在服务器上,这样能够提高应用的可靠性,并减少系统开发和维护的工作量。C/S模式的主要特点是分布式处理,以及客户机与服务器之间信息交换量的大大降低。但随着信息技术的发展,这种结构的缺陷也被逐渐地暴露了出来。首先,进入20世纪90年代中期,信息技术迅猛发展,CPU的处理能力越来越强,网络的应用日益普及,软件应用的规模和范围无限扩展,许多应用程序需在网络环境的异构平台上运行。在这种异构的环境下,不但存在多种硬件平台,而且包括运行在这些硬件平台上的各种系统软件及风格不同的用户界面,这些硬件平台还可能采用不同的网络协议和网络体系结构连接。由此带来的问题也越来越明显,如不同硬件平台、不同网络环境、不同操作系统、不同数据库管理系统之间的互操作问题,多种应用模式并存、传输不可靠、数据加密问题,开发周期过长问题等等。单纯依靠传统的系统软件或工具软件提供的功能已无法满足需要。其次,当C/S模式逐渐推广到企业级的关键任务环境时,便出现了一些问题,如系统可扩展性差、解析度低、软硬件组合和集成能力有限、可管理性差、维护代价高、安全性差、系统通信功能较弱等。为了解决两层结构遇到的问题,人们提出了三层结构的概念,也就是在传统C/S体系结构中,加入一个中间层,使其扩展成客户机中间层服务器三层结构,以解决不同系统之间的互操作问题。三层结构就是在原来的两层结构的客户端和数据库服务器端之间增加了一个中间层:应用服务器层,使业务逻辑从客户端移到了应用服务器端。这样一来,客户端仅负责显示用户界面和处理用户的输入输出,就不再直接与数据库建立连接了。客户端把用户的请求发送到应用服务器,由应用服务器从数据库服务器获得数据并进行计算,计算结果返回该客户端进行显示。应用程序集中放置在中间层上,由所有用户共享。当事务逻辑发生变化时,只需更新服务器上响应的应用程序构件,所有的客户端就可以使用新的事务处理逻辑,避免了客户端应用程序版本控制和更新的困难。因此,与两层C/S结构相比,三层C/S结构有助于提高系统的可适应性,对拥有大量并发用户的应用可大幅度提高系统可靠性和性能。三层C/S模式的中间层基于中间件来实现,如图2-3所示:服务端服务端服务端中间件客户端客户端客户端图2-3 基于中间件的C/S 三层结构模型C/S 三层(或多层)体系结构是目前网络分布式应用系统所大量采用的体系模型。通过上图可以看出,中间件位于各个应用的服务端与客户端之间,通过中间件有机地将它们连接起来。目前最常见的应用服务器中间件有:Oracle Weblogic Server、IBM WebSphere Application Server、iPlanet Application Server、东方通科技的TongWeb等。由于技术的多样性及应用的复杂性,分布式系统的各个应用资源(可根据具体应用情况,分为客户端与服务端,而服务端又包括业务逻辑与数据资源)往往在操作系统、数据库管理系统、网络协议或应用数据格式等方面存在着异构性,通过中间件,不仅可有效屏蔽各个应用的异构性、实现这些异构资源的互联共享,而且中间件还提供了一系列的功能,保证各个分布式应用的协同工作。因此,中间件也是一个分布式应用集成运行的框架。但是,即使采用上述的三层C/S结构,对于不同开发工具开发的应用程序,也可能要安装不同的客户端软件。对于一些在Internet上开发的业务,可采用基于Web的应用结构。基于Web的应用结构实际上是三层结构中的一种特殊情况,即在客户端和服务器端之间加入了Web服务器,从而使系统在逻辑上分为用户层、Web服务器层(包含应用层)和数据库层。另外,基于Web应用中的应用服务器也大都采用基于对象构件模型的中间件进行开发,如BEA的WebLogic、IBM的WebSphere等。根据著名的咨询机构Standish Group的调查报告显示,采用一个成熟的中间件产品能够使应用软件开发周期缩短3050,运行成本减少50。IBM公司还有这样一组的统计数据,采用IBM WebSphere作为企业应用整合的基础架构平台,开发时间能节省70,开发人员生产力提高了10倍,开发成本的节约最高超过了80。随着信息技术的迅速发展,尤其是Internet和WWW的出现及其在数字城市乃至数字地球中的应用,必然使软件的开发和使用面对网络这样的异构环境。在这种分布式的异构环境中,就会有多种现象出现:存在不同的硬件,存在不同的操作系统,存在不同的系统软件、应用软件和开发工具,存在多种风格各异的用户界面,存在不同的网络连接等等。所有这些问题,对软件的开发提出了新的挑战,尤其是对大规模软件的开发。如何在这样的异构环境中充分利用资源并开发新的应用,是一个非常现实而困难的问题。传统的程序设计语言是面向过程模式的,进入20世纪90年代,研究的中心转移到了面向对象的模式。与此对应,开发者开始创建中间件系统,该系统把过程调用扩展到远程调用,进而扩展到了计算机之间的方法调用。由此可见,中间件是为解决分布异构问题而提出的,中间件的使用使在异构环境中进行开发和应用变得更为方便和容易。特别是近几年,只要是分布式应用软件几乎都是在中间件的基础上开发的。通过以上剖析,我们不难得出有关中间件的以下几点结论:中间件是面向网络分布式应用的基础共性软件;中间件是介于操作系统、数据库管理系统、网络协议与应用软件之间的一种通用服务,是对具体不同应用的抽象实现,因此它是一种应用基础结构;中间件可以屏蔽差异,实现分布式资源的互联共享与互操作;中间件是构建分布应用系统的软件集成框架;中间件所解决的问题是复杂的,它是通过自身的复杂以换取应用的简单。2.3 中间件的定义中间件是一种独立的系统软件或服务程序,正处于发展过程之中,目前尚不能对中间件进行确切的定义。中国科学院软件研究所研究员仲萃豪认为:中间件是处于操作系统和应用程序之间的软件。人们在使用中间件时,往往是把一组中间件集成在一起,构成一个平台(包括开发平台和运行平台),但在这组中间件中必须要有一个通信中间件,因此可以比较形象地把中间件定义为:“平台通信”。这个定义限定了只有用于分布式系统中的此类软件才能被称为中间件。而也有的专家学者却认为,中间件应该属于操作系统中的一部分等等。尽管对中间件的定义存在有截然不同的看法,但在业界绝大部分的专家学者看法还是一致的,通常认为,中间件是基础软件的一大类,属于可复用软件的范畴。顾名思义,中间件位于硬件、操作系统与应用程序中间,能满足大量应用的需要,运行在多种硬件和操作系统平台之上,支持分布计算,提供跨网络、硬件和操作系统平台的透明性的应用或服务的交互,支持标准的协议和接口,在分布式客户和服务之间扮演着承上启下的角色,如事务管理、负载均衡以及基于Web的计算等等。所以一般认为,中间件是位于平台和应用之间的具有标准接口和协议的通用服务,分布式应用软件借助这一类软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信,能够屏蔽操作系统、数据库管理系统和网络差异,为异构环境之间提供通信服务,是具有强大通信能力和良好可扩展性的分布式软件管理框架,能为处于自己上层的应用软件提供运行与开发环境,帮助用户灵活高效地开发和集成复杂的应用软件,并实现分布式应用系统之间的互操作。 由于标准接口对于可移植性和标准协议对于互操作性的重要性,中间件已成为许多标准化工作的主要部分。对于应用软件开发来说,中间件远比操作系统和网络服务更为重要,中间件提供的程序接口定义了一个相对稳定的高层应用环境,不管底层的计算机硬件和系统软件怎样更新换代,只要将中间件升级更新,并保持中间件对外的接口定义不变,应用软件几乎不需任何修改,从而保护了企业在应用软件开发和维护中的重大投资。中间件难以被确切定义的一个重要原因是,其外延不断扩大,似乎无所不在,无所不包,人们无法清晰地勾勒出中间件的轮廓。一位软件专家认为,中间件难以界定是因为这类软件是以其在系统中的“位置”定义的,而不是基于功能和内涵定义的。当然,我们也可以从功能和内涵的角度理解中间件。如果我们把今天的“分布式计算”平台与通常的计算机平台做类比,那么我们就可以把中间件的功能与操作系统的功能类比,视中间件为分布式计算操作环境,其核心功能是为分布式应用的有效开发、部署、运行和管理提供支撑。但是,与今天的操作系统相比,中间件还没有类似UNIX和Windows等内涵基本定型的主流产品。 中间件难以理解的深层次原因是,人们对分布式计算的认识还十分有限,这就使得人们很难将支持分布式计算的中间件描述清楚。首先,在理论基础方面,今天的计算机技术是在图灵计算的概念和理论基础上发展起来的。而在分布式计算领域还没有类似的理论支持。可以想象,在图灵计算概念出现之前,人们在“计算”问题上的尴尬处境:一方面从事着各种各样的计算行为,另一方面无法清晰定义“何谓计算”。这就是今天我们在分布式计算领域处境。其次,在研究对象方面,操作系统所作用的计算机具有稳定的冯式计算机模型、确定的系统资源边界和明确的系统管理需求。而在分布式计算领域,没有稳定的计算模型,系统资源是动态变化的,由此导致系统管理需求也是模糊不清的。这就使得今天的中间件只能就事论事。第三,在研究方法方面,传统的软件系统(包括操作系统)采用分解还原、逐步求精的分析方法构造,而中间件需要体现综合集成的系统思想,体现成长性,体现可集成性。显然,中间件还在不断地丰富和发展,我们还没有一个清晰思路把握中间件的发展脉络。但是,我们触摸到了中间件的现实存在,认识到了中间件的重要价值,感受到了中间件的发展空间。也许中间件的挑战、魅力和诱惑正在于此。我们需要用探索和实践的轨迹去展现中间件。首先,我们需要扎实做好中间件在国家信息化中的应用工作,通过应用展现中间件;其次,在应用实践中不断推进中间件技术的发展,推进中间件产业的发展,通过技术和产业展现中间件;第三,在实践基础上深化分布式计算理论研究,力求从本质上把握中间件的发展趋势,从理论上展现中间件。或许有那么一天,中间件稳定下来了,主流产品出现了,理论概括形成了,我们就可以准确地定义和理解中间件了。2.4 中间件的发展情况2.4.1 国际中间件技术的发展国际中间件技术的应用最早具有中间件技术思想及功能的软件是IBM公司于1969年为实现联机事务处理和交易管理而推出的CICS(Customer Information Control System)产品,CICS具有非常广泛的客户群,根据IBM公司的有关资料,目前世界上每天有超过40万亿美元的交易由CICS实现,但由于当时的CICS不是分布式环境的产物,因此人们一般把Tuxedo作为第一个严格意义上的中间件产品。Tuxedo是1984年在当时属于AT&T的贝尔实验室开发完成的,但由于分布式处理当时并没有在商业应用上获得像今天这样的成功,Tuxedo在很长一段时期里只是实验室产品,后来被Novell公司收购,在经过Novell公司并不成功的商业推广之后,1995年被BEA公司收购,称为BEA Tuxedo,BEA公司2007年底被Oracle公司收购后称为Oracle Tuxedo,该产品是构筑易于管理的、业内领先的电子商务系统的交易平台,它简化了分布式事务处理和基于消息的应用开发,在分布式计算机异构环境中开发和部署复杂的电子商务应用系统。尽管中间件的概念很早就已经产生,但中间件技术的广泛运用却是在最近十几年之中。BEA公司1995年成立并收购Tuxedo后才成为一个真正的中间件厂商,IBM的中间件MQSeries也是90年代同期的产品,其它许多中间件产品都是最近几年才成熟起来。国际中间件技术和产品的发展中间件技术是在解决复杂分布式应用的共性问题中不断发展和壮大起来的,这些问题可以归纳为四个方面:从计算环境来看:中间件面对的是一个复杂、不断变化的计算环境,要求中间件技术具有足够的灵活性和可成长性。从资源管理的角度来看:操作系统和数据库管理系统管理的是有限资源,资源种类有限,资源量也有限,而中间件需要管理的资源类型(数据、服务、应用)更丰富,且资源扩展的边界是发散的。 从应用支撑角度来看:中间件需要提供分布式应用开发、集成、部署和运行管理的整个生命周期的总体运行模型。从应用的角度来看:利用中间件完成的往往是复杂、大范围的企业级应用,其关系错综复杂,流程交织。例如客户关系管理系统需要集成多个企业内部应用,而供应链管理则涉及企业之间的应用集成。 因此,由于分布式应用的复杂性,特别是分布、异构和自治等特点,决定了中间件技术和产品的形态多样性。目前的中间件技术已经形成一个丰富的谱系(见下图),正在向上(应用框架和普适服务)和向下(融合操作系统、数据库管理系统的功能)两个方向不断延伸,并在向更宽广的应用领域拓展。下面我们来看看中间件技术的谱系。图2-4 中间件技术的谱系国际中间件市场规模与增长2006年,全球中间件软件市场销售额达到126.3亿美元,比2005年增长了17.7。随着大型企业市场需求量处于下降状态,中小企业成为全球中间件厂商关注的重点,配置简单灵活易用的中间件成为部分中型企业投资的重点;同时大型企业在系统整合、升级中仍然对中间件软件存在较大的需求。表2-1和图2-5是20032006年全球中间件软件市场规模及增长率:表2-1 20032006年全球中间件软件市场规模及增长率图2-5 20032006年全球中间件软件市场规模及增长率从全球来看,中间件软件销售的主战场在北美、欧洲等经济发达地区,但随着电子政务和企业信息化架构基本搭建起来,大型的信息化实施项目开始显著下降,全球的中间件软件市场增长开始向两个方向转移:一是中小企业用户市场,二是亚太地区国家。新兴市场的快速增长受到全球厂商的高度关注。在Gartner公司2010年4月20日发布的一份报告显示,2009年全球中间件市场规模接近160亿美元,比2008年增长2.8%。IBM公司中间件销售收入为50.3亿美元,增长8.1%,市场份额达31.5%,依然保持在第一位。排名第二的Oracle公司表现抢眼,2009年中间件增长高达29.2%,销售收入已增至26.6亿美元,市场份额增至16.7%。中间件份额排在35位的公司分别是微软、Software AG和Tibco,销售收入分别为6.2亿美元、4.8亿美元和4.2亿美元。微软增长9.6%,Software AG增长9.1%,Tibco下滑1.2%。而其它中间件厂商则整体下滑8.6%。这表明全球中间件市场平台整合的趋势愈加明显。在Gartner划分的12类中间件产品中,SOA治理、消息中间件和BPM(业务流程管理)套件是增长最快的三个领域,增速都超过了10%。另外,APaaS (application-platform-as-a-service,应用平台即服务)也越来越受关注。Gartner分析师Asheesh Raina表示, Oracle表现突出得益于BEA在亚太拥有很多客户资源,而2009年亚太市场表现不错,尤其是中国。开源中间件技术的发展在过去十多年中,基础结构商品软件的主要供应商是IBM、BEA和Oracle等跨国软件公司。但是,现在的情况完全不同了。开源中间件技术及其服务业正在世界范围内迅速兴起。它像一盏明灯,指引着前进的方向。世界软件业的经营模式正处在发生剧变的前夕。中间件的开源模式如今,国际上关于中间件技术的开发思路有两种:企业专有模式与开源开发模式。目前,企业专有开发模式已经取得很大的成绩,例如,Oracle公司的WebLogic套件包;IBM公司的WebSphere套件包;还有HP、SUN、微软等公司推出的专有中间件产品。这些专有的商品化中间件产品的性能各有特色,价格往往都十分昂贵,而且这些不同厂商开发的中间件开发工具包,由于其中含有各个厂商的不同专有技术和专利,致使这样开发的各种应用系统不易整合,更不易统一管理。在如何发展中间件技术方面,还存在另外一种开发思路,还有另外一种技术实现路线,这就是开源开发模式。中间件的任何一点功能缺失和效率低下,都会冲击到大范围应用系统的正常运行,甚至影响到整个分布式网络系统的安全。为了提高中间件的可靠性(含安全性)和系统性能,把隐藏在中间件的直观表象背后的技术思路和实现方案、程序文档和软件源代码全部拿出来,让充分多的人去仔细“审视”,以求发现其中的任何一点“瑕疵”,实为一种“必需”,这就是开源中间件的出发点。开源中间件的目标当今,开源应用服务器主要有两种,一是JBOSS应用服务器,二是JOnAS应用服务器。但是,这两者的开发思路和所追求的目标却有很大的不同。JOnAS项目为“JAVA开放应用服务器”的缩写,其开发活动由法国ObjectWeb(国际开源中间件联盟)所主持。ObjectWeb的发展思路是“通过联合做强、做大”,它的雄心是联合一切力量,不仅联合一切开发者和广大用户,而且也联合一切相关的开源开发项目。其目标就是联合一切相关开源项目,组成一个统一的整体,帮助这些项目在他们的自身环境中顺利成长,直到取得胜利。ObjectWeb联合体的最终目标就是在开放标准的指引下,为电子商务、EAI(企业应用集成)、家庭自动化、电信以及数据仓库的连接、网格计算、企业信息处理和微内核设计等广大的软件开发领域提供传统商业化解决方案的“开源替代物”。由此可见,ObjectWeb国际联合体的目标十分远大,它要联合一切开源力量,联合一切相关开源项目,最终建立开源中间件的发展生态链,真正地推进开源中间件技术及其服务业的形成、发展和繁荣。而JBOSS公司的目标则是提供围绕JBOSS应用服务器的“软件服务”,开拓开源技术市场,从而为本企业获取可观的利润。应用服务器是开端当今,用Java语言开发运行在服务器上的应用程序,必须遵循SUN公司提出的J2EE规范,也就是说,这种规范给出了在分布式环境下开发和部署面向“组件”的Java应用程序应当遵循的一些具体规则。该规范指出了如何开发、部署和集成应用程序“组件”的具体办法,这就是所谓的“放入J2EE平台”。特别是J2EE规范描述了一种“J2EE服务器”的运行机理,“J2EE服务器”提供了一种执行环境和一些系统“服务”,例如,事务处理服务、保持服务、消息服务和安全服务等。“J2EE服务器”是一种符合J2EE规范的计算机抽象物,是Java应用程序的“活动场地”。典型的J2EE应用程序由两部分构成:一是表现组件(也叫Web组件,Servlets与JSP);二是企业组件(EJB,Enterprise JavaBeans),定义事务处理逻辑和应用数据。J2EE服务器提供两种“容器”,一种是负责处理Web组件;另一种是负责处理企业组件。上面提及的JBOSS和JOnAS开源应用服务器就是“J2EE服务器”,它们分别在2004年6月19日和2005年2月1日通过了J2EE测试认证。在J2EE服务器的发展史上,开放源码的“应用服务器”能够通过J2EE的性能测试并给予“认证”,确实是一件震动世界软件业的大事。开源应用服务器是开源中间件的集中体现,从此,对于开源中间件的各种怀疑论调都失去了根据。企业级应用扩展现今,开源应用服务器已经在企业应用软件市场上占有不容忽视的地位。据BZ研究公司曾经主持的一项有关Java的使用与认知研究的调查结果发现,他们的被调查对象回答说,使用IBM WebSphere应用服务器占33.9、使用BEA WebLogic应用服务器占28.7、使用Oracle Application应用服务器占22和使用开源JBOSS应用服务器占34.8,开源应用服务器JBOSS占据了第一位。HP、NOVELL和Unisys公司都把JBOSS应用服务器当作“缺省(Default)应用服务器”应用在他们的硬件和软件部署上。美国红帽公司收购JBOSS公司,并大力支持ObjectWeb联合体的应用服务器JOnAS。今后几年,企业软件市场上的开源中间件技术一定会成为一股强劲而不可阻挡的发展潮流。前不久,IBM收购了GlueCode,一举获得了Apache基金会Geronimo(开源应用服务器)开发团队,这是IBM最新主张“开源J2EE”的一项具体举措。IBM想把自己的应用服务器WebSphere放在高端领域,而把开源J2EE应用服务器放在中低端领域。纵观以上情况,不难看出开源中间件技术在企业应用市场上已经取得的令人鼓舞的成绩。2.4.2 中国中间件市场的发展 我国中间件市场的发展目前,发达国家凭借“高端技术”、“高额价格”垄断了国际软件产品市场。在操作系统、数据库管理系统方面,发展中国家无法与之抗衡。而近年发展起来的中间件市场却是群雄并起,中国与发达国家基本处于一个起跑线上,这是我国切入基础软件领域的一个契机,也是最有可能实现突破的软件市场。国内在中间件领域的起步阶段正是整个世界范围内中间件的初创时期。北京东方通科技公司是中间件平台技术专业厂商,早在1992年就开始中间件研究与开发,1993年推出第一个产品TongLINK/Q。可以说,在中间件领域国内的起步时间并不比国外晚多少。 随着全球信息技术的不断进步,中国金融、电信、政府、教育等各主要行业相继在信息化基础设施和应用系统的建设上加大了投入力度。在这个过程中,某些应用系统之间出于信息共享的需要而产生的多种操作系统、异构数据库管理系统的共存以及网络环境复杂性的增加等诸多问题,加大了对于中间件产品的需求,促进了中间件软件市场的发展。 经过多年的市场培育,加上政府的积极支持,2000年以来,中间件软件在中国得到了飞速的发展,中国中间件产业正处于市场快速增长的成长期。目前,中间件产品已成为国内软件行业投资的一个新热点。据了解,国家有关部门已把中间件列入重点发展、重点扶持的软件项目,并寄希望于中间件能够推动我国在基础软件实现突破,并带动软件产业的规模化发展。2000年4月,中国软件行业协会就在北京举办“中间件技术与发展战略高级研讨会”,来自信息产业部、科技部、中国建设银行以及软件行业的专家和领导,针对中间件技术的应用现状和趋势,探讨了以中间件为突破口,推动中国软件产业发展的问题;在国家科技部、财政部、税务总局共同组织编制的中国高新技术产品目录中,中间件作为支撑软件首次入选。国家有关部门对中间件的发展之所以如此重视,除了国内外企业对中间件的研发和推广几乎是同步,几乎处于同一起跑线外,还有两个重要原因:其一,在软件价值链上,中间件处于网络、操作系统与数据库系统之上,应用软件之下的中枢环节,也就是说,中间件的位置非常关键,如重要的交通枢纽一般,它能够支撑和拉动上下游厂商的共同发展,推动软件产业链的实现;其二,中间件是将各种应用串起来的一个绳索,与单个的应用相比,它与国家信息安全有着更加紧密的关系,如果单个数据库或ERP(企业资源计划)、CRM(客户关系管理)出了问题,损失的可能是部分应用的数据,但是如果是中间件出问题的话,受影响的则是整个网络环境和应用,因此,专家和政府官员都一致认为,中间件产品更需要用自主知识产权的产品来剔除安全隐患。北京东方通科技公司是我国中间件平台技术最大的专业厂商,是信息产业部电子发展基金的投资企业,1992年成立以来,东方通科技公司一直从事中间件平台软件的产品开发与市场开拓,是中国中间件技术领域的开拓者和领导者。东方通科技公司的战略目标是以中间件产品为核心,提供企业信息化、电子商务和电子政务必需的基础软件平台。2002年,东方通科技更进一步把发展战略由单一的产品形态向整体化、集成式的中间件平台技术推进,在不断研究开发新产品的同时,开放式的吸纳第三方的中间件及应用组件产品,以专业服务加以整合,为用户提供具有行业特性的中间件平台产品与服务。到2002年底,东方通科技中间件产品在国内的总装机量超过30万套,覆盖金融、邮电、能源、交通、政府等行业,在中国中间件市场与世界顶尖对手IBM和BEA(Oracle)形成三足鼎立之势,实现了中国基础软件在市场占有率上的跨越式突破。2002年在全球著名投资咨询机构德勤组织的首届“亚太地区高科技高成长500强”评选中名列前茅;2003年被中国计算机用户协会评选为“中间件产品信赖品牌”;2004年其系列中间件产品荣获“中国软件20年最具应用价值的软件产品”,“国内中间件品牌用户综合满意度第一”、“中国软件20年明星企业奖”和同行业最高荣誉“金软件”奖;2005年在全国中间件应用年会上,获优秀电子政务统一应用平台技术方案奖;2008年、2009年和2010年又分别获得“20072008中国软件市场年度成功企业奖”、“20082009中国软件市场年度成功企业奖”和“20092010中国软件市场年度成功企业奖”。到目前为止,东方通科技的中间件产品已被广泛应用于金融、通信、能源、交通、政府、军工等众多行业,总装机量超过60万套。我国中间件市场发展的变化特点总结分析中国中间件产业的发展历程,赛迪顾问认为,中国中间件市场的发展正在显现出三大变化特点:竞争态势,从三足鼎立到三大梯队十几年来,中国中间件市场的竞争经历了从品牌优势绝对集中到品牌相对分散的发展过程。发展初期,以本土企业东方通科技、跨国IT企业BEA和IBM三大品牌为主的中间件产品占据了市场90以上的份额,并呈现三足鼎立的态势。然而,随着近年来用户对于中间件需求的迅速增加,新的中间件厂商,尤其是中国的本土软件企业相继加入市场的角逐,导致目前中国中间件市场呈现出群雄争霸的局面。诸多厂商大致可以划分为三大梯队:以IBM、Oracle(BEA)和东方通科技为主力的第一梯队;以微软、Sun、中软、中创等大型IT企业为主力的第二梯队;由国内若干中小软件企业和系统集成企业组成的第三梯队。其中,第一梯队的三家厂商2004年占据了中国中间件市场64的份额,2005年则占据了中国中间件市场57的份额,第二梯队正在借助自身在其它产品方面的优势逐步扩大在中间件市场中的份额,而第三梯队的势力或者通过与平台软件供应商的合作,或者运用其自身的本土化服务优势和在行业市场中的经验积累,也在逐步吞噬第一梯队的市场份额。然而,从总体形势来看,尽管国内众多软件企业的市场份额正在逐步扩大,但以IBM、Oracle(BEA)等为主导的国外企业还是依靠其良好的技术和品牌占有相对优势。分析中国中间件市场的发展历程,可以看出,由于中间件软件是具有一定技术含量的产品,主流的中间件开发商在技术上已拥有多年的开发积累过程,也拥有一定的技术积淀,因此,新的软件企业要想加入该市场,首先遇到的障碍就是技术,而资金和技术往往是限制中国软件企业发展的主要症结所在。因此,尽管中间件是拥有巨大发展潜力的软件产品,但国内品牌要取得绝对的竞争优势,仍需要一定的发展过程。采取适当的市场策略,借助自身的本土优势和行业优势,同时加强与平台供应商的合作,将是中国中小中间件软件企业获得持续发展的重要途径。产品概念,从通用产品到两极分化中间件技术发展的初衷是以适应网络分布式应用的复杂性及跨平台特性为基础的,由于其产品技术含量相对较高,开发厂商需要拥有一定的研发实力和技术积累,所以应用行业也往往具有网络系统复杂和跨平台操作等特点,因此,最初开发的产品主要以重点行业的通用中间件产品为主。但随着开发商数量的增加、产品应用范围的扩大和应用需求行业的增加,中间件产品逐渐产生出了许多细分的类型,如目前,中间件已发展为包含有消息中间件、对象中间件、交易中间件、数据库访问中间件、应用服务器中间件和安全中间件等十多种类型的软件产品。在中间件产品类型不断细分的同时,中国中间件产品在概念上还呈现出一种两极分化的趋势,即由通用中间件逐渐分化为与平台软件(如操作系统、数据库管理系统等)结合日趋紧密的基础中间件,和与行业应用系统结合日益紧密的应用中间件。目前,基础中间件的典型产品包括应用服务器中间件、消息中间件、数据库访问中间件等,开发厂商包括IBM 、Oracle(BEA)、东方通科技、微软等中间件厂商;应用中间件的典型产品,如电子政务系统集成开发平台等,其开发商主要是国内众多中小软件企业和系统集成商。分析中间件产品的主要特性,赛迪顾问认为,中间件的广泛应用主要基于其对于操作系统和计算机硬件的相对独立性而言,这是其跨平台应用的基础;而应用中间件实际上是针对具体的行业应用系统,整合其相关的功能而开发的一种应用集成平台,其本质应当属于行业应用软件的范畴。无论是基础中间件还是行业应用集成平台,赛迪顾问认为,这两种产品都具有良好的发展前景。其主要原因在于,推动中国软件市场发展的主要动力是行业应用,而行业信息化建设是最近几年乃至今后中国各级政府积极推进的重要工作内容,除了电信、金融等重点行业已在信息化建设方面投入了巨大力量外,传统的制造、流通、医疗、交通、能源、政府等行业也正在信息化基础设施和网络系统建设方面投入大量资金,行业信息化必然带动中国中间件市场和行业应用软件市场的快速发展;同时,用户需求的日益个性化和复杂化也将促使中间件产品市场继续细分,按照用户需求、为用户提供全程的产品服务,将成为中间件厂商立足市场、提升自身竞争力的重要手段。应用领域,从重点行业到传统行业如上所述,中国中间件市场获得持续高速的增长,是与中国政府对于软件产业的大力支持、供应商产品种类的增加以及中国信息化建设的推动等诸多因素有直接关系的。其中,行业信息化建设对于中间件产品需求的拉动作用是市场增长的主要动力。中间件产品最初在国内应用较为集中的行业是电信和金融,其中银行业是我国中间件应用最广泛也是最为成熟的行业,这与这些行业信息化建设起步较早、其跨区域应用系统建设对于跨平台要求较高等因素有很大关系。但随着近年来中国能源、交通、政府等行业相继加快信息化的步伐,这些行业也对中间件产品产生了较大需求。2001年以来,中国政府“以信息化带动工业化”政策的实施,又推动了传统的制造、流通、医疗等行业对于中间件产品的需求。据赛迪顾问的研究表明,金融、电信两行业在中国中间件产品市场中的份额,已从2000年的83.7下降为2006年的70.2,而政府、教育部门的份额已由8.4上升到14.6,其它的传统行业如制造、流通、卫生、交通、能源等对中间件的应用也迅速增加。而且据预测,今后几年,中国中间件市场的应用需求将以28以上的年均复合增长率快速增长;同时,随着政府电子政务、教育信息化以及其它传统行业信息化建设步伐的加快,传统行业对于中间件软件的需求将以32以上的增长率快速增长,传统行业在中间件市场中的份额将日趋增加。由此可见,中间件软件在中国市场仍具有巨大的发展潜力,这也为中间件厂商,尤其是中小软件企业创造了更大的发展机会。借助自身的行业优势,与应用系统相结合,有重点地开发面向传统行业的应用中间件产品,将具有良好的发展前景。我国中间件市场近期发展动态我国中间件市场成长迅速,增势显著近几年来,中国中间件软件市场正朝着正确的方向快速健康发展。2002年,中国中间件市场的销售总额达4.25亿元;2003年,中国中间件市场的销售总额达5.35亿元,比2002年同期增长25.88;2004年,中国中间件市场的销售总额达7.06亿元,比2003年同期增长31.96;2005年,中国中间件市场的销售总额达8.75亿元,比2004年同期增长23.9;2006年,中国中间件市场的销售总额达10.71亿元,比2005年同期增长22.4;2007年,中国中间件市场的销售总额达13.75亿元,比2006年同期增长28.4;而2008年,中国中间件市场的销售总额达15.46亿元,比2007年同期增长12.4,而2009年,中国中间件市场的销售总额达18.30亿元,比2008年同期增长18.4,虽然有所增长,但是同前几年相比,增长速度已经放缓,虽然这不能完全归结于金融危机,但是金融危机对于中间件市场的影响,尤其是对国产中间件的影响可见一斑;表2-2和图2-6是20022006年中国中间件软件市场规模与增长:表2-2 20022006年中国中间件软件市场规模与增长图2-6 20022006年中国中间件软件市场规模与增长研究表明,中国中间件市场将继续保持着旺盛的增长势头,2011年中国中间件市场的销售总额预计将达到24亿元,可以说目前中国中间件市场正处于快速成长阶段,中间件软件产业开始迈入规模发展并且更加趋于成熟的阶段。市场竞争日趋激烈,国外厂商仍占优国内厂商紧追虽然中国中间件市场形成的时间不长,但市场发展空间十分广阔,众多厂商纷纷关注这一领域,各厂商之间的竞争日趋激烈。经过几年的市场洗礼,2003年中国中间件市场的竞争格局基本形成,国外厂商仍然占有较大市场份额,国内厂商对国外厂商日渐构成威胁。2004年中国中间件市场的前三名为BEA、IBM和东方通科技,他们的市场份额分别为25.5、23.8和15.3;2005年占据中国中间件市场份额的前三甲是IBM、BEA和东方通科技,三者的市场份额分别为21.9,17.8,17.3;同2004年相比,在这三家厂商中,IBM和BEA在国内的市场份额均出现了下滑,只有东方通科技的市场占有率提升,并与BEA的差距历史性地缩小为0.5。2006年占据中国中间件市场份额的前三甲仍然是IBM、BEA和东方通科技,三者的市场份额分别为22.1,18.6,18.1;而到了2008年,占据中国中间件市场份额的前三甲仍然是IBM、Oracle(BEA)和东方通科技,三者的市场份额分别为25.8,24.7,17.9;与前几年相比,三强所占的市场份额有所上升。其中,IBM的优势难以被取代,即使是收购了BEA的Oracle,其合并市场份额仍旧排在IBM之后,而且Oracle尚未完成对于BEA原有产品和渠道的整合工作,从而未能改变整个市场的格局。根据赛迪顾问、计世资讯、易观国际等权威资讯机构的市场分析报告,2009年中国中间件市场仍然相对集中,虽然跨国公司处于支配地位,但以东方通中间件为首的国产软件已逐步占领金融电信等核心领域,以高市场份额在国内企业中名列首位,与IBM、Oracle正面抗衡并稳居中国中间件市场第一梯队,继续形成三足鼎立的局面。显然,第一梯队在中间件市场的业绩整体回暖,而这首先便与SOA(面向服务的架构)有着十分微妙的联系。从2006年以来,中间件厂商“搭车”SOA可以说是一个大势所趋的选择。从技术视野上来看,如果中间件产品没有考虑SOA是短视的,在技术跟随上也会显得行动缓慢。对于厂商而言,应该密切注意技术的发展潮流,只有加紧技术的跟踪与研发,推出符合SOA架构的产品和解决方案,才能在市场角逐中取得前瞻性的核心竞争力。图2-7是2008年中国中间件市场主要厂商所占的份额:图2-7 2008年中国中间件市场主要厂商所占的份额分析人士指出,自2006年开始的中国中间件进入了“多元化和广泛化”的新阶段,从此前以电信和金融为主扩展到其他IT应用行业门户,包括“政府、教育、能源、交通、制造”在内的行业开始规模化采用中间件产品,而“卫生、科研、媒体、建筑、邮政”等垂直特性不明显的行业,也出现了引用中间件产品的势头。使国内中间件厂商也寻得了更多发展机会。随着国内中间件厂商在细分领域渗透的深入,它们在局部的竞争优势已经初步显露。2006年国产中间件厂商依靠东方通科技、金蝶、中创、普元、中软、中关村科技、点击科技等公司的出色表现,在国内中间件市场总体份额比2004年的32.5上升了6.3,总体市场占有率达到了38.8。国内中间件技术发展迅速,接近国际领先水平国内在中间件技术领域研究的起步时间与国外基本相同,国内厂商与国外厂商在技术水平方面基本处于同一条起跑线上,国产中间件软件与国际先进产品的差距不是很大,有的已经接近国际领先水平。在国内,国防科技大学、北京大学、北航、中科院软件所、东南大学等大学和院所很早就投入到中间件技术的研究中,并形成了一系列的成果。在国家发改委、信息产业部电子发展基金和国家科技部863计划和政府其他基金资助下,通过各项目研究单位和国内骨干软件企业多年的不懈努力,国内在基础中间件领域已经形成丰富的技术积累,并在CORBA技术(国防科技大学与中创软件)、消息

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论