《中间件综述ppt课件.ppt》由会员分享,可在线阅读,更多相关《中间件综述ppt课件.ppt(81页珍藏版)》请在三一办公上搜索。
1、课程内容,中间件产生基础和起源(1个学时)描述应用模式的演变与分层处理、软件结构与软件发展潮流中间件概念(1个学时)中间件定义、作用中间件基本类型介绍(1个学时)描述中间件的主要种类、以及各种中间件解决的问题和适用范围中间件综述(1个学时)中间件的发展历史中间件的应用现状,课程目的,对中间件的整体认识了解中间件的历史、起源、作用、分类、发展趋势为深入学习中间件技术奠定基础,中间件产生的基础及起源,计算环境的演变分布式计算环境的演变中间件诞生的意义,主机终端系统,DBMS,DC (Data Comm),Operating System,Terminal 1,Terminal 2,Terminal
2、 3,AP 1 AP 2AP 3,Database,主机/终端方式的应用构成,输入/输出的表示逻辑管理客户从键盘上的输入.把内容和结果显示在终端屏幕上.处理数据确认业务处理存储数据的存储与恢复.,主机终端系统的特点,优点系统的可靠性、效率、扩展性保证均在主机上终端位置简单大量用户公用资源单一厂家的技术、系统无须集成缺点对中心的压力很大效率偏低扩展困难依赖单一厂家,分布式系统,定义由许多独立的计算机组成一个系统,对使用这个系统的用户来说,就象面对一台计算机一样。这样的系统我们称之为分布式系统。,客户/服务器结构,客户方,服务器,计算机,计算机,网络,应用处理逻辑分布在不同的计算机上通常是表示层逻
3、辑在客户方、处理逻辑在服务方,特点系统有多台计算机构成互相构成网络系统计算机各自完成不同的工作系统结构灵活、处理效率高网络负担较小,客户/服务器结构,典型客户/服务器结构:文件服务器,典型客户/服务器结构:文件服务器,典型客户/服务器结构:三层结构,数据库,PC机,界面,业务逻辑,业务逻辑,业务逻辑,PC机,界面,数据库管理系统,Browser,应用服务器(第二层),数据库服务器(第三层),客户方(第一层),客户方,应用软件结构的变化,单一计算机操作系统数据库系统(文件系统)编程语言(编程工具)问题如何使不同计算机上的应用共享资源,如何把不同计算机上的应用连接起来如何实现不同计算机上的应用互操
4、作,分布式操作系统,一种紧偶合的操作系统,用于操作多处理器的单个计算机或者多个同构的计算机。分布式操作系统通过屏蔽和管理硬件资源,来实现应用的分布式处理,分布式操作系统,分布式操作系统的一般结构,网络操作系统,针对网络互连的多台异构计算机的操作系统为远程客户提供本地服务通常基于文件系统实现互操作,网络操作系统,网络操作系统的一般结构,网络操作系统,客户/服务器方式之一,分布式数据库,提供开发分布式应用的手段客户程序开发工具客户程序与服务程序连接工具服务程序开发工具举例Oracle:Form、Pro*C、Developer2000、SQL*netInformix:4GL、ESQLC、PB、I-S
5、TARSybase:PB、VB,NetLibary,分布式数据库,过程调用,SQL语句,过程调用,方法一:,方法二:,客户/服务器方式之二,分布式系统更深层次的问题,跨平台,包括不同的网络,主机、数据库等支持复杂的应用模式不同应用系统的集成保证系统的处理效率保证系统的高可用性保证系统的动态扩展能力提供调试,维护,管理工具保障系统安全加快开发周期,保证质量,问题特点,原有系统软件未能解决与业务逻辑无关应用软件实现困难多数问题与网络有关涉及应用软件开发、管理和部署等各方面,角色分工,操作系统,数据库,我不干,太麻烦,应 用,太难了,中间件,我来搞掂,从软件的分层看中间件的诞生和发展,- 相应的软件
6、产品,操作系统 数据库 辅助工具类软件(如编译程序、文字编辑器),操作系统 数据库 辅助工具类软件 网络基础设施类 专用系统 中间件,应用系统,裸机,应用系统,系统软件,应用系统,中间件,裸机,网络软件,传统系统软件,裸机,应用系统,中间件,网络软件,传统系统软件,裸机,平台,平台软件,应用组件,中间件的概念,中间件是一组程序,应用于分布式系统各应用之中,为系统屏蔽底层通讯和提供公用服务,并保障系统的高可靠性、高可用性、高灵活性,中间件的概念,中间件是一个通道, 保障应用信息的可靠传递中间件是一个桥梁, 达成商务构件的互连互通中间件是一个框架, 促成企业应用的完整集成中间件是一个平台, 实现分
7、布式应用的顺利部署,中间件是 “客户/服务器”结构中的“/”,中间件的定位,操作系统API,操作系统,通讯,处理,存储,中间件API,中间件,分布式应用,操作系统API,操作系统,通讯,处理,存储,中间件API,中间件,分布式应用,计算机1,计算机2,网 络,中间件概念,那些已知的软件是中间件CICSSQL*NET RPCHTTPCORBAJ2EE.NET这些是中间件吗邮件系统Lotus NotesExchange,中间件概念的几个要点,中间件是软件中间件在应用软件和系统软件之间中间件是一类软件而不是一种中间件与网络是“亲戚”中间件不是开发工具,通常包含开发、管理和部署,终端访问 数据访问远程
8、过程调用消息交易对象,中间件的分类IDG的分类,中间件的分类GIGA的分类,来源: Giga Information Group, 1998,来源: Giga Information Group, 1998,续:,来源: Giga Information Group, 1998,续:,中间件的分类Aberdeen的分类,中间件的分类EITO的分类,中间件的分类我们的观点,目前流行的主流中间件技术数据访问消息交易分布式对象分布式构件(应用服务器、DCOM)工作流应用集成门户其他,中间件的作用,缩短开发周期 节约应用程序开发成本 降低运行成本 降低故障率 改善决策 应用系统群集/集成 减少软件维护
9、 提高质量 改进技术 提高产品吸引力,来源: Standish Group International, Inc., 1998,中间件的新发展平台概念,屏蔽复杂细节,提供简单接口提供个性化服务贴近行业应用,应用软件平台,适合特定行业应用的基础构件及服务的整合,一个具体的平台个性化,平台=中间件 + 应用构件 + 专业服务,中间件的新发展平台概念,基于业务基础软件平台的应用软件是新一代的应用软件,资料来源:计世资讯(CCW Research),(Sybase Netlib, SQL*NET, I_Star ,ODBC, JDBC, etc.),数据访问,连接数据库的客户端与服务端实现分布式数据库
10、传输SQL语句及数据库操作结果支持存储过程,中间件分类介绍,数据访问,SQL语句,过程调用,数据访问中间件,数据访问中间件,数据访问中间件,数据访问中间件,中间件分类介绍,高可靠性,高效率,高可用性,易用性,安全性,交易管理,功能,交易管理机制 高速数据甬道机制 网络通讯压缩 网络调度功能 应用管理机制 服务优先权机制 动态伸缩机制 故障恢复机制 监控管理机制 名字服务和路由机制 多个层面的安全机制 加密机制,中间件分类介绍,RM API,TX,TxRPC,CPI-C,XATMI,XAP-TP接口,TCP/IP,APPC,OSI,X/OPEN DTP模型,XA,XA+,联机交易处理系统:处理大
11、量并发交易的交易处理系统 (涉及到操作系统、文件系统、编程语言、数据通讯、数据库 系统、系统管理、以及应用软件开发),(Tuxedo, TongEASY, CICS),交易管理,体系结构,应用,资源管理器(RM),交易管理器(TM),通信资源管理器(CRM),OSI-TP,中间件分类介绍,数据,业务逻辑,界面,客户端,交易中间件,AS,数据库服务器,传统技术实现三层结构的主力产品,SQL、XA,消息(MOM),功能,高效、可靠的数据传输 交易包/文件包 各种通讯服务(名字服务) 点到点、端到端通讯 实时网络监控及管理 结点状态控制 多种通讯机制,中间件分类介绍,面向消息(MOM),异步通信AP
12、Is(端到端)(发送消息/接收消息)大量/重复多节点实时性高,队列/可靠传输接近实时广域网(MQSeries)(TongLINK/Q),发布/订阅(频道/听众)(股市信息/每秒上千条)实时大批量(Subject-based)(Content-based),IP Multicast 支持TCP/IP协议(Internet)同一IP包只需传送一次,通信机制,接口函数/包装模板, 队列, 数据交换, 路由,中间件分类介绍,同步通信,异步通信,永久连接,应需连接,文件传输,程序启动,并行处理,分布处理,(核心:队列管理),IBM MQSeries,TongLINK/Q,面向消息,特性:,应用,应用,应
13、用,应用,中间件分类介绍,O-O 分析,O-O 设计,O-O 数据库,O-O 编程,O-O 操作系统,UML,C+, Java,?,?,芯片(32位, 64位, 128位, . ),对象,中间件分类介绍,分布式构件化的应用的部署与管理平台,CORBA(Common Object Request Broker Architecture ) ORB, OTS, IDL, POA, GIOP, IIOP, Services,对象中间件,Obj,Op( ),本地调用,Obj,Op( ),远程调用,中间件分类介绍,CORBA,公共对象请求代理结构(Common Object Request Broker
14、 Architecture),各种服务,中间件分类介绍,CORBA,Client,IDL Spec,Server,Stub,Skeleton,ORB-Library,Stub,Client,ORB-Library,Skeleton,Server,中间件分类介绍,对象: - 封装性, 继承性, 多元性 - 软件基本单元, 单一体小颗粒,构件: - 封装性, 复用性, 包容性 - 软件基本结构单元, 具有容器特性大颗粒,构件技术,中间件分类介绍,O-O开发工具,构件模型(COM+/DNA/.NET, J2EE/CCM),分布式应用,分布式构件化 应用,中间件分类介绍,J2EE体系结构,中间件分类介
15、绍,WEB 应用服务器,服务器端: 基于WEB的 底层服务库与APIs 主要是J2EE功能包括: 事件管理, 安全管理, 对象管理, 通信管理 和交易管理(两阶段提交)客户端: Browser功能支持: HTML, Java Applet, JSP, SERVLET,EJB,JMS HTTP, IIOP, RMI, etc.,WAS,中间件分类介绍,应用服务器,“将不同的应用技术集成在一起,使多层分布式应用的开发、部署、管理变得更加容易“,Application Server,基于三层(应用)结构的应用服务器 基于Web的应用服务器,- Giga Information Group,“应用服务
16、器提供了跨网络的各应用程序之间的集成“,- AMR,中间件分类介绍,数据,业务逻辑,界面,浏览器,WEB应用服务器,AS,数据库服务器,基于BS技术的三层结构,JDBC,数据,表示/业务逻辑,界面,浏览器,WEB应用服务器,数据库服务器,多层结构,业务逻辑,交易中间件,AS,工作流,定义设计工作流程管理工作流执行工作流监视和干预工作流的执行,工作流就是在计算机技术的帮助下对商业流程部分或者全部实现自动化设计和管理,IBM MQ workflow、Webmethods,中间件分类介绍,工作流模型,中间件分类介绍,应用集成,来源: Giga Information Group, 1998,Ente
17、rprise Application Integration (EAI),中间件分类介绍,应用集成的类别,中间件分类介绍,门户,是访问各种企业应用、内容的统一入口提供统一的用户界面为企业提供协同工作环境为最终用户提供个性化的信息服务支持通过不同的设备访问企业信息PC手机PDA,IBM Portal Server、ORACLE 、BEA Weblogic Portal,中间件分类介绍,功能体系,PIM服务,内容提供,工作协同,内容定制,搜索服务,多设备支持,内容联合,高速缓存,索引,应用集成,单点登录,工作流,用户管理及安全,内容管理,集成管理,组件,模版,IDE,最终用户服务,内置服务,门户管
18、理,门户开发,门户服务器,个性化内容交付,中间件分类介绍,为什么需要企业门户,其他,数据仓库中的中间件(数据迁移、元数据服务)CALL Center中的中间件(CTI)机顶盒中的中间件(格式转换),中间件分类介绍,中间件全貌及趋势,来源: Giga Information Group, 1998,中间件的历史,中间件概念最早起源于二十世纪八十年代中间件的流行始于二十世纪九十年代中间件的流行归由于分布式系统的发展中间件更多的是要解决分布式环境中遇到的问题中间件的早期概念与“网络操作系统”、“分布式操作系统”、“分布式计算环境”有关。,中间件的历史几个重要的里程碑,CICS 诞生于70SRPC 诞
19、生于1982TUXEDO诞生于1984DTP模型诞生于1990s分布式数据库1980sOMG 成立于1989年MOMA成立于1993年J2EE1.0规范诞生于1999应用服务器诞生于1998年,1968 - Package developed by Michigan Bell and IBM on OS/3601971 - CICS available for DOS & DOSE1973 - Development moved to Hursley, England1987 - CICS/VM introduced1992 - CICS/400 version for AS/4001996
20、- CICS Web Interface Product2003 - TXSeries,中间件的历史CICS,CICS :Customer Information Control System,Pre-1983:Research,TUX,bell lab1984:Release 1.0 1986:Release 2.0 HA1987:Release 3.0 TUXEDO1993:Release 4.2 acquire by Novell1996:Release 6.1 acquire by BEA2003:Release 8.0,中间件的历史Tuxedo,Earliest papers on
21、RPC 1975Xeror Courrier RPC was released 1981XNS SPP transprot + 16bit Xeror NSUSED BY Novell NetwareFirst RPC from Sun in 1985(using sockets)UDP/TCP based transport + XDRSynchronous and asynchronous RPC(callbacks)Most prominent application Suns NFSHP DCE RPC in 1989Sun Doors in 1993,中间件的历史RPC,中间件的历史
22、DEC,Corba 1.0 Oct.1991Dec.1993Corba 2.0-2.3 Aug.1996Jun.1999Corba 2.6 Dec.2001 Corba 3.0 Aug.2002,中间件的历史CORBA,May 23 1995javaJan 23 1996JDK 1.01996Servlet、JavaBeans1997JDK1.1Apr 2 1997EJBJun 29 1999J2SE、J2EE、J2MEDec 1999J2EE Platform Release,中间件的历史J2EE,中间件的历史几个重要的里程碑,我国最早的消息中间件1993TongLINK1.01993.6T
23、ongLINK2.01994TongLINK/Q3.01998TongLINK/Q4.02000 TongLINK/Q5.02003我国最早的交易中间件1994TongEASY1.01994TongEASY2.01996TongEASY3.01998TongEASY4.02000TongEASY5.22003我国最早的应用服务器TongWebTongWeb1.02000TongWeb3.02003我国最早的EAI中间件TongIntergratorTongIntergrator1.02002,我国最早的中间件厂商1998TongTechCCID 开始统计我国中间件市场2000年我国中间件获得的
24、最高荣誉国家科技进步奖2002,中间件的历史几个重要的里程碑,中间件的应用现状市场,据IDC预测,全球中间件市场在1999年到2004年之间有255的高速发展,即全球中间件市场将从1999年的27亿美元发展到2004年的97亿美元;其中年平均增长率可达到29%(CAGR)据IDC研究报告,全球大约有100家中间件生产商,主要为美国生产商。市场当中主要的竞争者包括BEA,IBM,TIBCO,IONA,HP等。,数据来源:IDC,中间件的应用现状应用服务器市场,中间件的应用现状中国市场,数据来源:CCID 2003 年2月,中间件的应用现状中国市场,数据来源:CCID 2003 年2月,行业分布,品牌分布,