第1章:中间件技术介绍

上传人:枫** 文档编号:470344693 上传时间:2023-08-07 格式:DOC 页数:7 大小:170KB
返回 下载 相关 举报
第1章:中间件技术介绍_第1页
第1页 / 共7页
第1章:中间件技术介绍_第2页
第2页 / 共7页
第1章:中间件技术介绍_第3页
第3页 / 共7页
第1章:中间件技术介绍_第4页
第4页 / 共7页
第1章:中间件技术介绍_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《第1章:中间件技术介绍》由会员分享,可在线阅读,更多相关《第1章:中间件技术介绍(7页珍藏版)》请在金锄头文库上搜索。

1、第一章:中间件技术介绍1.1两层结构与三层结构长期以来,我们一直使用着客户端/服务器的两层结构,这种两层的结构曾让无数人为之兴奋和惊叹,即客户端提供用户界面、处理业务逻辑,数据库服务器接受客户端SQL语句并对数据库进行查询,更新等操作,然后操作结果返回给客户端,如图所示。在一个比较简单的计算机应用系统中,采用两层体系结构的确给人们带来了相当的灵 活性。但随着计算机应用水平的飞速发展、企业信息化水平的不断深入、企业客户的不断增加,以及新业务的不断出现,越来越多的用户对计算机应用系统提出了更高的要求:1. 要能够同时支持成千上万乃至更多用户的并发服务请求2. 由单一的局域网向跨多个网络协议的广域网

2、扩展3. 不仅要支持一般的信息管理,而且还要支持关键业务的联机交易处理4. 从支持单一的系统平台和数据源转向支持异构的多系统平台和多数据源面对用户的新需求,二层结构的应用模式由于采用客户机与服务器直接联接的方式形成了其固 有的一些缺陷:1. 难以维护clie nt/server结构用户界面、业务逻辑和数据逻辑相互交错,通常在第一次部署的时候比较容易,但难于升级或改进,而且经常基于某种专有的协议(通常是某种数据库协议)。它使得重用业务逻辑和界面逻辑变得非常困难。2 难以扩展随着系统的升级,系统复杂程度大大增加,难以扩展,另外它是一个封闭的系统,很难与其他 的应用系统实现互操作。3. 安全性差客户

3、端程序可以直接访问数据库,可通过编程语言或数据库提供的工具直接对数据库进行操作, 不安全4性能不好客户端直接与数据库建立连接,当有大量的并发用户存在时,会使数据库不堪重负,性能迅速 下降,甚至当机。三层结构为解决传统二层模式与应用需求日益突出的矛盾,以交易中间件为基础框架的三层应用模 式应运而生,三层结构以中间层管理大量的客户端并为其联接、集成多种异构的服务器平台, 通过有效的组织和管理,在极为宽广的范围内将客户机与服务器进行高效组合。同时中间件开 创的以负载平衡、动态伸缩等功能为代表的管理模式,已被广泛证实为建立关键业务应用系统 的最佳环境,使在二层模式下不可能实现的应用成为可能,并为应用提

4、供了充分的扩展余地。 这种模式的成功应用已为许多国际大型企业在应用的开发和部署方面节省了大量的时间和金 钱。由此促使越来越多的系统开发商和用户采用三层结构模式开发和实施其应用。三层客户机/服务器模式的核心概念是利用中间件将应用的用户界面、业务逻辑和数据逻辑分为三个不同的处理层,如图所示1. 表示层(用户界面):它的主要功能是实现用户交互和数据表示,为以后的处理收集数据,向第二层的业务逻辑请求调用核心服务处理,并显示处理结果。这一层通常采用VB, PBDELPHI等语言编写,或采用浏览器实现2. 中间层(业务逻辑):实现整个应用系统核心业务逻辑,通常把业务逻辑划分成一个个独立的模块,用中间件提供

5、的API结合数据库提供的编程接口实现。客户端通过调用这些模块实现相应的业务操作。3. 数据层(数据逻辑):数据库负责管理整个应用系统的数据资源,完成数据操作。中间层上 应用程序在处理客户端的请求时,通常要存取数据库。随着市场竞争的日益加剧和企业电子信息化建设的不断深入,高度灵活、能快速部署新服 务和新应用的三层结构应用系统将成为企业信息化的必由之路。采用以中间件为基础的三层结 构来架构的应用系统不但具备了大型机系统稳定、安全和处理能力高等特性,同时拥有开放式 系统成本低、可扩展性强、开发周期短等优点。可以很好解决两层结构所面临的问题。中间件 作为构造三层结构应用系统的基础平台,在三层结构中起着

6、关键的作用,下一节我们将对中间 件技术做一个概括性的介绍。1 2 中间件技术简介什么是中间件随着计算机技术的发展, IT 厂商出于商业和技术利益的考虑,各自产品之间形成了差异,技术 在不断进步,但差异却并没有因此减少。计算机用户出于历史原因和降低风险的考虑,必然也 无法避免多厂商产品并存的局面。 于是,如何屏蔽不同厂商产品之间的差异,如何减少应用软 件开发与工作的复杂性,就成为技术不断进步之后,人们不能不面对的现实问题。 显然,由一 个厂商去统一众多产品之间的差异是不可能的,而单独由计算机用户在自己的应用软件中去弥 补其中的大片空档,由于技术深度和技术广度的要求,必然也是勉为其难。于是,中间件

7、应运 而生。中间件试图通过屏蔽各种复杂的技术细节使技术问题简单化。 在中间件产生以前, 应用 软件直接使用操作系统、网络协议和数据库等开发,这些都是计算机最底层的东西,越底层越 复杂,开发者不得不面临许多很棘手的问题:1. 一个应用系统可能跨越多种平台,如UNIX, NT,甚至大机,如何屏蔽这些平台之间的差异?2. 如何处理复杂多变的网络环境,如何在脆弱的网络环境上实现可靠的数据传送?3. 一笔交易可能会涉及多个数据库,如何保证数据的一致性和完整性?4. 如何同时支持成千上万乃至更多用户的并发服务请求?5. 如何提高系统的可靠性,实现故障自动恢复和故障迁移。保证系统7*24*52 可用。6.

8、如何解决与已有应用系统的接口。 这些与用户的业务没有直接关系,但又必须解决,耗费了大量有限的时间和精力。于是,有人 提出能不能将应用软件所要面临的共性问题进行提炼、抽象,在操作系统之上再形成一个可复 用的部分,供成千上万的应用软件重复使用。这一技术思想最终构成了中间件这类的软件。中间件( middleware )现在是与操作系统,数据库并列的3 大基础软件之一,顾名思义,中间件处于操作系统软件与用户的应用软件的中间。中间件在操作系统、网络和数据库之上,应用 软件的下层,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、 高效地开发和集成复杂的应用软件。在众多关于中间件的定义

9、中,比较普遍被接受的是 IDC 的定义:中间件是一种独立的系统软件 或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服 务器的操作系统之上,管理计算资源和网络通信。IDC 对中间件的定义表明,中间件是一类软件,而非一种软件;中间件不仅仅实现互连,还要 实现应用之间的互操作;中间件是基于分布式处理的软件,最突出的特点是其网络通信功能。最早具有中间件技术思想及功能的软件是IBM的CICS,但由于CICS不是分布式环境的产物,因此人们一般把 Tuxedo 作为第一个严格意义上的中间件产品。 Tuxedo 是 1984 年在当时属于 AT&T 的贝尔实验室开发完成的,

10、但由于分布式处理当时并没有在商业应用上获得像今天一样 的成功, Tuxedo 在很长一段时期里只是实验室产品,后来被 Novell 收购,在经过 Novell 并不 成功的商业推广之后, 1995 年被现在的 BEA 公司收购。尽管中间件的概念很早就已经产生, 但中间件技术的广泛运用却是在最近 10年之中。 BEA 公司 1 995年成立后收购 Tuxedo 才成为 一个真正的中间件厂商, IBM 的中间件 MQSeries 也是 90年代的产品,其它许多中间件产品也 都是最近几年才成熟起来。国内在中间件领域的起步阶段正是整个世界范围内中间件的初创时 期。东方通科技早在 1992 年就开始中间

11、件的研究与开发, 1993 年推出第一个产品 TongLINK/Q 。 可以说,在中间件领域国内的起步时间并不比国外晚多少。中间件的作用: 具体地说,中间件屏蔽了底层操作系统的复杂性,使程序开发人员面对一个简单而统一的开发 环境,减少程序设计的复杂性,将注意力集中在自己的业务上,不必再为程序在不同系统软件 上的移植而重复工作,从而大大减少了技术上的负担。中间件带给应用系统的,不只是开发的简便、开发周期的缩短,也减少了系统的维护、运行和 管理的工作量,还减少了计算机总体费用的投入。 Standish 的调查报告显示,由于采用了中间 件技术,应用系统的总建设费用可以减少50左右。在网络经济大发展、

12、电子商务大发展的今天,从中间件获得利益的不只是 IT 厂商, IT 用户同样是赢家,并且是更有把握的赢家。其次,中间件作为新层次的基础软件,其重要作用是将不同时期、在不同操作系统上开发应用 软件集成起来,彼此像一个天衣无缝的整体协调工作,这是操作系统、数据库管理系统本身做 不了的。中间件的这一作用,使得在技术不断发展之后,我们以往在应用软件上的劳动成果仍 然物有所用,节约了大量的人力、财力投入。中间件的分类: 中间件技术已经日渐成熟,并且出现了不同层次、不同类型的中间件产品。大致可分为以下几 类:消息中间件 (Message Orient middleware: MOM) 将数据从一个应用程序

13、发送到另一个应用程序,这就是消息中间件的主要功能。它 要 负责建立网络通信的通道,进行数据的可靠传送。保证数据不重发,不丢失,消息中间件的一个 重要作用是可以实现跨平台操作,为不同操作系统上的应用软件集成提供数据传送服务。它适 用于进行非实时的数据交换,如银行间结算数据的传送.主要的产品有: IBM MQSeries BEAMessageQ BEA Tuxedo /Q MicroSoft MSMQ 东方通科技 tonglink/q 。交易中间件 (Transaction Processing: TP) 交易中间件也和消息中间件一样具有跨平台,跨网络的能力 ,但它的主要功能是管理分布于不同计算机

14、上的数据的一致性,协调数据库处理分布式事务,保障整个系统的性能和可靠性。交易中间件所遵循的主要标准是 x/open dtp 模型。它适用于联机交易处理系统,如银行的 ATM 系统 , 电信的计费营收系统 .主要产品有 :BEA TUXEDO, IBM CICS, 东方通科技 tongeasy对象中间件 (Object Momitor)对象中间件也叫 Object TP Momitor, 它一般也具有交易中间件的功能 ,但它是按面向对象的模式 来组织体系结构的 ,在线的电子交易很适合采用这种中间件类型.因为这种类型的应用会被频繁的修改 ,面向对象的体系结构可以保持足够的弹性来应付这种改动.提到面

15、向对象的中间件 ,就不得不提到对象请求代理 (Object Request Brokers: ORBs), 现在有 3 种对象请求代理体系结构 ,CORBA,EJB,COM+,ORBs 是一组协议或是标准 ,现在的对象中间件都是按照上面三种体系结构 的某一种 来构 造的.如: Borland VisiBroker,MicroSoft Transaction Server,IONA orbix,IBM componentbroker, 东方通科技 tongbroker应用服务器 (Application Server) 应用服务器主要用来构造基于 WEB 的应用,是企业实施电子商务的基础平台。它

16、一般是基于 J2EE 体系结构。 让网络应用的开发、部署、管理变得更加容易。使开发人员专注于业务逻 辑。 主要的产品有 BEA weblogic IBM webspere,Borland AppServer 等 ,还有一些开放源代码的J2EE 应用服务器 ,如 JBOSS 等 .企业级应用集成 (Enterprise Application Intergration : EAI) 一个大型企业内部往往有很多的计算机应用系统, EAI 可用于对这些系统进行有效的整合。使 它们之间能够互相访问,实现互操作。 EAI 所提供的上层开发工具或许是 EAI 和其他中间件最 大的区别 ,它允许用户自定义商业逻辑和自动使数据对象符合这些规则.EAI 的典型用户是那些

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号