1 / 107

中间件介绍

中间件介绍. 中间件的概要介绍. 大家知道的中间件. 中间件??. 计算机1. 计算机2. 应 用. 应 用. 应用 A. 应用 B. 中 间 件. 中 间 件. API. API. 操 作 系 统. 操 作 系 统. API. API. 通讯. 处理. 存储. 通讯. 处理. 存储. A 、 B 或是不同的应用, 或是一个应用的不同部分. 网 络. 最常见的中间件. 消息中间件 交易中间件 JEE 应用服务器 工作流系统 应用集成中间件 门户服务器. 中间件的重要性. 缩短开发周期

jewel
Download Presentation

中间件介绍

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 中间件介绍

  2. 中间件的概要介绍 大家知道的中间件

  3. 中间件?? 计算机1 计算机2 应 用 应 用 应用A 应用 B 中 间 件 中 间 件 API API 操 作 系 统 操 作 系 统 API API 通讯 处理 存储 通讯 处理 存储 A、B或是不同的应用, 或是一个应用的不同部分 网 络

  4. 最常见的中间件 • 消息中间件 • 交易中间件 • JEE应用服务器 • 工作流系统 • 应用集成中间件 • 门户服务器

  5. 中间件的重要性 • 缩短开发周期 • 节约应用程序开发成本 • 降低运行成本 • 降低故障率 • 改善决策 • 应用系统群集/集成 • 减少软件维护 • 提高质量 • 改进技术 • 提高产品吸引力 来源: Standish Group International, Inc., 1998

  6. 中间件象什么? • 中间件是一个通道, 帮助应用实现高效、可靠地信息传递 • 中间件是一个桥梁, 使应用之间实现便捷的互连互通 • 中间件是一个框架, 帮助高效、可靠地构建企业应用 • 中间件是一个平台, 实现分布式应用的快速搭建和部署

  7. 几个要点 • 中间件是软件 • 中间件在应用软件和系统软件之间 • 中间件是一类软件而不是一种 • 中间件与网络是“亲戚” • 中间件不只是开发工具

  8. 内容 • 中间件的起源和作用 • 中间件种类与功能 • 几种主流的中间件介绍 • 中间件厂商

  9. 中间件的起源与作用 — 从系统体系结构和技术变化看中间件

  10. 主机/终端系统 — 最早的业务处理/信息系统 Operating System DC (Data Comm) DBMS Database 本质上都在同地! 所有技术问题 一家搞定! AP 1 AP 2 AP 3 通信线路 Terminal 1 Terminal 2 Terminal 3

  11. 分布式系统— 割据时代的系统体系结构 网络中多厂商软、硬件 异构系统的互联、互通 与互操作问题!

  12. 分布式系统 — 典 型的客户/服务器结构 、 客户方 应用程序: 业务处理 界面处理 。。。 客户方 客户方 局域网络 数据库如何访问? 有没有标准的办法? 请求 应答 数据 数据存储 数据库服务器

  13. 数据库 分布式系统 — 典型的三层/多层结构 应用服务器(第二层) 数据库管理系统 业 务 逻 辑 业 务 逻 辑 业 务 逻 辑 数据库服务器(第三层) 比简单的C/S结构 更多的问题! 中间层宜应对:大并发、 应用/服务调度、分布式 事务… Browser 界面 界面 PC机 PC机 客户方(第一层) 客户方

  14. 分布式系统 — 一些局部的结构—P2P和群集 业 务 处 理 A 业 务 处 理 B 业 务 处 理 A 业 务 处 理 B 业 务 处 理 C 业 务 处 理 B 业 务 处 理 C A机 其它一些问题: 协同、均衡负载、 高可用性… P2P File共享 索引 /发现 E机 索引 /发现 B机 索引 /发现 群集(紧偶合) C机 索引 /发现 D机 索引 /发现 连接通常是高速LAN,目 标是改进性能和可用性 两了群集—HA和LB 使部分资源给其peer直接使用的网络体系架构 不通过中间者,既是提供者又是消费者 节点ad-hoc加入,更可伸缩和健壮

  15. 分布式系统 — 共性的问题与需求 • 问题&需求 • 异构系统之间的通信 • 对多连接、高并发请求的管理 • 应用程序和服务的调度和管理 • 对远程数据库的访问和管理 • 分布式全局事务的控制和管理 • 异构系统间的集群支持 • … • 其它要求 • 解决方案具有普适性 • 应用程序能够方面地在系统间移植 • 简单、易于使用 • … 到处能碰到这些问题!

  16. 最有影响、最流行的分布式应用体系结构:1995—最有影响、最流行的分布式应用体系结构:1995— 3层结构被认为 是企业应用的 的基本结构 支撑实现3层结构 应用的中间件也 就成了明星软件

  17. 应运而生的明星中间件—交易中间件 BEA TUXEDO 东方通 TongEASY • 中国邮政 • 中国联通 • 中国移动 • 中国建设银行 • … • … • 中国建设银行 • 中国交通银行 • 华夏银行 • 中国联通 • 中国移动 • … 90年代末至00年代初最有影响的中间件

  18. Obj Op( ) ODBMS O-O 数据库 ORB ORB 网络 软件技术和方法的变化—需求的一个侧面 对象技术 1,更自然的认识世界的角度 2,更可复用,更可提高应用质 量, 降低开发成本的方法 3,随着“分布式”的发展,又提 出了新的要求 O-O 分析 UML O-O 设计 O-O 编程 C++, Java O-O 数据库 O-O 操作系统

  19. 软件技术和方法的变化—需求的一个侧面 构件技术 1,粗粒度的复用, 低成本、 高质量构造系统的方法 2,随着“分布式”的发展,又提 出了新的要求 3,新的开发方法—构件应用的 开发方法、新的角色等 构件: - 封装性, 复用性, 可独立部署 - 软件基本结构单元, 大颗粒 对象: - 封装性, 继承性, 多元性 - 软件基本单元, 小颗粒

  20. 软件技术和方法的变化— 需求的一个侧面 HTTP JSP/Servlet Java

  21. 软件技术和方法的变化—从构件到服务 服务及面向服务 1,仅有接口和实现分离并不够 2,还要不管是CORBA、J2EE还 是.NET都能很好的支持 3,那还得支持XML/HTTP等流行 的协议了 4,开发方法也会有变化—未来可 能的关注点:找到/选择合适的服 务、服务的编排(组合成流程)等

  22. 一些有益的尝试 — 分布式操作系统 • 紧偶合的操作系统,用于操作多处理器的单个计算机或者多个同构的计算机。 • 分布式操作系统通过屏蔽和管理硬件资源,来实现应用的分布式处理 太理想化 的环境!

  23. 一些有益的尝试 — 网络操作系统 • 针对通过互连的异构计算机系统 • 为远程客户提供本地服务 • 通常基于文件系统实现互操作 文件系统互操作 还远不够!

  24. 一些有益的尝试— 分布式数据库 • 数据库厂家的最初理想——用类似于“分布式操作系统”一样的“分布式数据库”管理系统解决分布式问题。最终只提供了对数据库的分布式的访问工具。 Machine A Machine B Machine C Distributed Applications Distributed DBMS Distributed DBMS Distributed DBMS 大目标,小小地实现 了一下! OS OS OS

  25. 总的来看基础软件的变化 • 分布式系统带来的问题/需求 • 如何使不同计算机上的应用共享资源, • 如何把不同计算机上的应用连接起来 • 如何实现不同计算机上的应用互操作 • 对软件技术和产品的挑战 • 操作系统(多种计算机系统,分布式的支持) • 数据库系统/文件系统(分布式的支持) • 编程语言/编程工具(跨系统平台、新的软件概念与技术) • 其它专用的软件(Web支持、多数据库支持、…) • 应用软件(架构、方法、技术、工具等等)

  26. 分布式系统中的深层次问题 • 跨平台,包括不同的网络、主机、数据库等 • 支持复杂的应用模式 • 不同应用系统的集成 • 保证系统的处理效率 • 保证系统的高可用性 • 保证系统的动态扩展能力 • 提供调试,维护,管理工具 • 保障系统安全 • 加快开发周期,保证质量

  27. 问题特点 • 原有系统软件未能解决 • 与业务逻辑无关 • 应用软件实现困难 • 多数问题与网络有关 • 涉及应用软件开发、管理和部署等各方面

  28. IT厂商的角色分工— trouble maker/shooter 谁能搞掂…? 我对业务没得说, 看机会吧… 应 用 我擅长数据管理, 不过…也许...如果 … 擂台赛 数据库 我最专业,不过… 至少… 我原想它会成为 OS的一部分… 操作系统 中间件

  29. 中间件的种类与功能

  30. 中间件的种类——流行的中间件 • 数据访问中间件(UDA等) • 消息中间件(MOM) • 交易中间件(TSMW,TP Monitor) • 分布式对象中间件(CORBA中间件、ORB) • 分布式构件(应用服务器、DCOM等) • 工作流系统(含BPM) • 应用集成中间件(Message Broker,SOA套件等) • 门户服务器 • 其他

  31. 中间件的变化—— IDG 1998 • 终端访问 • 数据访问 • 远程过程调用 • 消息中间件 • 交易中间件 • 对象中间件

  32. 中间件的变化——GIGA 1998 来源: Giga Information Group, 1998

  33. 来源: Giga Information Group, 1998

  34. 来源: Giga Information Group, 1998

  35. 中间件的变化——Aberdeen 2000

  36. 中间件的变化——EITO 2003

  37. 是不是中间件? • 那些已知的软件是中间件 • CICS • SQL*NET • RPC • HTTP • CORBA • J2EE • .NET • 这些是中间件吗 • 邮件系统 • Lotus Notes • Exchange

  38. 中间件的功能——Gartner 2004

  39. 中间件“通用技术参考模型” 摘自《中间件通用评价指标要求》(电子四所)

  40. 中间件的另一视角 来源: Giga Information Group, 1998

  41. 中间件的一般组成 中间件的组成 编程抽象/工具 运行支撑 系统服务/组件 服务质量 API库及 可视化开 发工具 公共 服务 功能 引擎 功能 容器 功能 组件 日志 监控 通信 调度 存储 基础运行环境 (JRE等)

  42. 中间件的发展:多样、丰富是总的趋势 应用系统 应用系统 应用系统 应用系统 领域中间件 集成中间件 中间件 基础中间件 网络软件 网络软件 系统软件 传统系统软件 传统系统软件 裸机 裸机 裸机 裸机 - 相应的软件产品 • 操作系统 • 数据库 • 辅助工具类软件 • (如编译程序、文字编辑器) • 操作系统 • 数据库 • 辅助工具类软件 • 网络基础设施类 • 专用系统 • 中间件

  43. 几种主流的中间件介绍

  44. 中间件分类介绍 — 数据访问 功能 • 连接数据库的客户端与服务端 • 支持实现分布式数据库(更高要求) • 提供“标准”的数据库访问方式 • - 使用SQL语句访问数据库 • 客户方将操作(SQL语句)发给服务方,服务 • 方交给DBMS,客户方接收数据库操作结果 • - 支持存储过程(SP) • 客户方可以呼叫服务方的存储过程 (Sybase Netlib, SQL*NET, I_Star ,ODBC, JDBC, etc.)

  45. 中间件分类介绍 — 数据访问 典型的二层结构 SQL语句 数据访问 中间件 数据访问 中间件 过程调用 数据访问 中间件 数据访问 中间件 SP 一般是LAN环境内,简便的解决方案

  46. 中间件分类介绍— 数据访问 统一数据访问(UDA) 多数据库系统 统一入口 一般是LAN环境内,也是数据集成的解决方案

  47. 中间件分类介绍— 数据访问 UDA解决方案 典型应用 某省海事局综合 信息发布系统

  48. 中间件分类介绍—交易管理 数据处理逻辑 (“炒菜”) DB 一般是LAN 数据库服务器层 业务处理逻辑 (“炒菜”) 应用服务器层 WAN或LAN 输出数据给用户 从用户获得输入数据 展现逻辑 (“装盘上桌”) 展现层

  49. 中间件分类介绍 — 交易管理 功能 高效率/高可靠性/高可用性/易用性/安全性 • 高速数据甬道 • 应用/服务调度机制 • 服务优先权机制 • 全局事务管理 • 负载均衡/高可用机制 • 监控管理机制 • 名字服务和路由机制 • 安全机制

  50. 中间件分类介绍—交易管理 参考模型 应用 TX XATMI RM API TxRPC CPI-C 通信资源 管理器 (CRM) 交易管理器 (TM) 资源管理器 (RM) XA+ XA XAP-TP接口 OSI-TP X/OPEN DTP参考模型 TCP/IP APPC OSI 联机交易处理系统:处理大量并发交易的交易处理系统 (涉及到操作系统、文件系统、编程语言、数据通讯、数据库 系统、系统管理、以及应用软件开发) (Tuxedo, TongEASY, CICS)

More Related