多做题,通过考试没问题!

高级系统架构师

睦霖题库>计算机软件水平考试>高级系统架构师

论中间件技术在软件开发中的作用 随着软件应用越来越复杂,软件开发"一切从零开始"的开发模式也越来越不能满足应用的要求。一些著名的软件公司推出自己的中间件产品,如通信中间件、数据库中间件等为软件开发提供有力的支持。 请围绕"中间件技术在软件开发中的作用"这个论题,依次从以下3个方面进行论述: ①概要叙述你参与分析和开发的应用项目,以及你所担任的主要工作。 ②具体讨论你在软件开发过程中选取中间件的原则和标准,结合实例详细叙述中间件技术在你的软件开发中的作用。 ③假如你在一个软件公司中能够起到影响公司决策的作用,请你结合市场和技术因素,为你的公司设计一个有自主版权的中间件的方案,并评价你的方案。

正确答案: 写作要点
中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户服务器的操作系统之上,管理计算资源和网络通信。
从定义中可以看出:
①中间件是一类软件,而非一种软件。
②中间件不仅要实现互联,还要实现应用之间的互操作。
③中间件是基于分布式处理的软件,最突出的特点是其网络通信功能。
1.中间件的分类
根据功能的不同,中间件可以细化为以下一些种类:
①通信处理(消息)中间件。在不同平台之间通信,实现分布式系统中可靠的、高效的、实时的跨平台数据传输,称为消息中间件。这是中间件中唯一不可缺少的,是需求量最大的中间件产品,目前在大部分操作系统中已包含了其部分功能。
②事务处理(交易)中间件。在分布式事务处理系统中要处理大量的事务,常常在系统中要同时进行上万笔事务。在联机事务处理系统(OLTP)中,每笔事务常常要多台服务器的程序顺序地协调完成,一旦中间发生某种故障时,不但要完成恢复工作,而且要自动切换系统,达到系统永不停机,实现高可靠性运行;同时要使大量事务在多台应用服务器实时并发运行,并进行负载平衡地调度,实现昂贵的小型机和大型计算机系统同等的功能,为了实现这个目标,要求系统具有监视和调度整个系统的功能。一个事务处理平台,根据X/OPEN的参数模型规定,应由事务处理中间件、通信处理中间件,以及数据存取管理中间件3部分组成。
③数据存储管理中间件。在分布式系统中,重要的数据都集中存放在数据服务器中,它们可以是关系型、复合文档型、具有各种存放格式的多媒体型,或者是经过加密或压缩存放的,该中间件为在网络上虚拟缓存、格式转换、解压等带来了方便。
④Web服务中间件。浏览器图形用户界面已成为公认规范,然而它的会话能力差、不能做数据写入、受HTTP协议的限制等,必须进行修改和扩充,这形成了Web服务器中间件。
⑤安全中间件。一些军事、政府和商务部门上网的最大障碍是安全保密问题,而且不能使用国外提供的安全措施(如防火墙、加密、认证等),必须用国产的产品。产生不安全因素是由操作系统引起的,但必须要用中间件去解决,以适应灵活多变的要求。
⑥跨平台和体系结构的中间件。当前,开发大型应用软件通常采用基于体系结构和构件的技术,在分布系统中,还需要集成各节点上的不同系统平台上的构件或新老版本的构件,由此产生了体系结构中间件,功能最强的是CORBA,可以跨任意平台,但是太庞大;JavaBean较灵活简单,很适合于做浏览器,但运行效率差;DCOM模型主要适合Windows平台,已广泛使用。实际上国内新建系统主要是UNIX(包括Linux)和Windows,因此针对这两个平台建立相应的中间件要实用得多。
⑦专用平台中间件。为特定应用领域设计参考模式,建立相应体系结构,配置相应的构件库和中间件,为应用服务器开发和运行特定领域的关键任务(如电子商务、网站等)。
⑧其他中间件。现在出现了一些中间件,如数据流中间件、门户中间件,以及为某些专业领域如银行、电信等开发的专用中间件。另外还有一些更高层的中间件,多用于系统整合,包括企业应用集成中间件、工作流中间件、门户中间件等是多种中间件的组合。
2.中间件的优点及其应用
中间件作为一大类系统软件,与操作系统、数据库管理系统并称"三套车",其重要性是不言而喻的,中间件的优点应该说是有目共睹的。它的优越性体现在以下几个方面:缩短应用的开发周期;节约应用的开发成本;减少系统初期的建设成本;降低应用开发的失败率;保护已有的投资;简化应用集成;减少维护费用;提高应用的开发质量;保证技术进步的连续性;增强应用的生命力。
具体地说,中间件屏蔽了底层操作系统的复杂性,使程序开发人员面对一个简单而统一的开发环境,减少了程序设计的复杂性,将注意力集中在自己的业务上,不必再为程序在不同系统软件上的移植而重复工作,从而大大减少了技术上的负担。
中间件带给应用系统的不只是开发的简便、开发周期的缩短,还减少了系统的维护、运行和管理的工作量,同时减少了计算机总体费用的投入。Standish的调查报告显示,由于采用了中间件技术,应用系统的总建设费用可以减少50%左右。在网络经济、电子商务大发展的今天,从中间件获得利益的不只是IT厂商,IT用户同样是赢家,并且是更有把握的赢家。
其次,中间件作为新层次的基础软件,其重要作用是将不同时期、在不同操作系统上开发的应用软件集成起来,彼此像一个天衣无缝的整体协调工作,这是操作系统、数据库管理系统本身做不了的。中间件的这一作用,使得在技术不断发展之后,我们以往在应用软件上的劳动成果仍然物有所用,节约了大量的人力、财力的投入。3.中间件的发展趋势
中间件作为构筑企业信息系统和电子商务系统的基石和核心技术,向着标准化和构件化方向发展。具体来看,有以下3种发展趋势:
①规范化。在中间件的发展过程中,做得最好的一件事情就是规范的制定。对于不同类型的中间件,目前都有一些规范可以遵循,如消息类的JMS,对象类的CORBA和COM/DCOM,交易类的XA、OTS、JTA/JTS,应用服务器类的J2EE,数据访问类的ODBC和JDBC,Web服务有SOAP、WSDL、UDDI等。这些规范的建立极大地促进了中间件技术的发展,同时保证了系统的扩展性、开放性和互操作。
②构件化和松耦合。除了已经得到较为普遍应用的CORBA、DCOM等适应Intranet的构件技术外,随着企业业务流程整合和电子商务应用的发展,中间件技术朝着面向Web、松耦合的方式发展。基于XML和Web服务的中间件技术,使得不同系统之间、不同应用之间的交互建立在非常灵活的基础上。XML是一种可扩展的源标识语言,它提供了一种新的定义标识语言标准。XML技术非常适合于异构系统间的数据交换,因此在国际上已经被普遍采纳为电子商务的数据标准。而Web服务作为基于Web技术的构件,在流程中间件的控制和集成下可以灵活、动态地被组织成为跨企业的商务应用。
③平台化。目前,一些大的中间件厂商在已有的中间件产品基础上,都提出了完整的面向互联网的软件平台战略计划和应用解决方案。4.选用中间件的原则
①技术成熟度。不同的中间件的发展历史都不同。由于中间件涉及的技术面广,与操作系统、网络、数据库和应用都有关系,因此中间件从诞生到成熟需要2~3年的时间。中间件的技术成熟度是一个很需要关注的问题。
②先进性。中间件的技术先进性主要看它是不是符合国际的潮流,是否采用了各种标准化的做法。比如,它能不能支持HTML、JavaScript、XML这样一些国际标准的语言环境。因为大量的应用软件都是在语言环境下发展起来,现在计算机上的这些语言环境已经很成熟,手机上也开始有了Java,机顶盒如果不支持这些标准的话,将来很难做到应用服务的通用。如果中间件技术上能达到国际开放标准水平的话,就很容易向上发展了。包括MHP和MHEG和美国的OPENCABEL在内的一系列的中间件标准,只要中间件支持JavaScript、HTML和XML等通用语言,这3种常用中间件的主流模块都可以移植到我们的应用服务里。
③与遗留应用的结合度。如果选用中间件构造的应用与传统的遗留应用要建立联系的话,就必须考虑这个问题。
④使用的难易程度。每类中间件使用的难度也不尽相同。有些中间件只是你的应用的一部分,而有些中间件将会给你的应用一个新的体系结构。应用的现状、应用开发队伍的水平、中间件本身的复杂程度等,都会影响中间件的使用效果。
⑤成本。不同类的中间件的成本不同,如把消息中间件只是用在局域网上实现数据访问显然代价太大,把交易中间件用在非交易处理类系统中去传递消息同样不可取。另外也要考虑技术培训对开发成本带来的影响。
⑥技术方向。有的中间件比较传统,而有的中间件是发展方向,中间件的选择与对软件技术发展趋势的把握紧密相关。如果企业已决定用构件技术或Web技术,就要选择相关的中间件。
⑦适用性。好的中间件要带一个非常丰富的应用库。中间件的一个最大作用就是重复使用已经开发过的应用软件模块,通常这些模块都是以库单元的方法来实现的,中间件在实际应用中越成功,开发的应用程序越多,它带的库就越丰富,使用者就可以越简便地开发或修改自己需要的新服务,这就是知识的积累。
通过以上分析,可以对中间件技术有一个全面的了解,除了基础技术的了解,写好本文,还要注意以下要点:
①用400~600字简单介绍你参与分析和开发的应用项目,以及你所担任的主要工作。
②简单介绍中间件的种类及作用。
③具体讨论你在软件开发过程中选取中间件的原则和标准,结合实例详细叙述中间件技术在你的软件开发中的作用
④结合市场和技术因素,为你的公司设计一个有自主版权的中间件的方案,并评价你的方案。
答案解析:
进入题库查看解析

微信扫一扫手机做题