1、中间件产生背景

合集下载

中间件

中间件

中间件发展动因:初始状态:硬件(ENIAC?ABC!)分离出了程序(汇编)初始状态:硬件+ 程序程序的共性(稳定)成分:计算资源管理产生了:操作系统(FMS)分离出了:应用程序初始状态:硬件+ 操作系统+ 应用程序程序的共性(稳定)成分:数据管理产生了:数据库管理系统(IMS)分离出了:应用软件初始状态:硬件+ 操作系统+ 数据库管理系统+应用软件程序的共性(稳定)成分:网络资源管理产生了:中间件(应用服务器)分离出了:业务逻辑(构件)定义:中间件(middleware)是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。

中间件(middleware)是基础软件的一大类,属于可复用软件的范畴。

顾名思义,中间件处于操作系统软件与用户的应用软件的中间。

中间件在操作系统、网络和数据库之上,应用软件的下层,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件。

历史:⏹中间件概念最早起源于二十世纪八十年代⏹中间件的流行始于二十世纪九十年代⏹中间件的流行归由于分布式系统的发展⏹中间件更多的是要解决分布式环境中遇到的问题⏹中间件的早期概念与“网络操作系统”、“分布式操作系统”、“分布式计算环境”有关。

几个重要的里程碑⏹CICS 诞生于70S⏹RPC 诞生于1982⏹TUXEDO诞生于1984⏹DTP模型诞生于1990s⏹分布式数据库1980s⏹OMG 成立于1989年⏹MOMA成立于1993年⏹J2EE1.0规范诞生于1999⏹应用服务器诞生于1998年CICSCICS :Customer Information Control System1968 - 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 - CICS Web Interface Product2003 - TXSeriesTuxedoTansaction for UniX Extended for Distributed OperationsPre-1983: Research,TUX,bell lab1984: R elease 1.01986: R elease 2.0 HA1987: R elease 3.0 TUXEDO1993: R elease 4.2 acquire by Novell1996: R elease 6.1 acquire by BEA2003: R elease 8.0RPCEarliest papers on RPC 1975Xeror Courrier RPC was released 1981–XNS SPP transprot + 16bit Xeror NS–USED BY Novell NetwareFirst RPC from Sun in 1985(using sockets)–UDP/TCP based transport + XDR–Synchronous and asynchronous RPC(callbacks)–Most prominent application Sun’s NFSHP DCE RPC in 1989Sun Doors in 1993CORBACorba 1.0 Oct.1991—Dec.1993Corba 2.0-2.3 Aug.1996—Jun.1999Corba 2.6 Dec.2001Corba 3.0 Aug.2002J2EEMay 23 1995 javaJan 23 1996 JDK 1.01996 Servlet、JavaBeans1997 JDK1.1Apr 2 1997 EJBJun 29 1999 J2SE、J2EE、J2MEDec 1999 J2EE Platform Release⏹我国最早的消息中间件1993–TongLINK1.0 1993.6–TongLINK2.0 1994–TongLINK/Q3.0 1998–TongLINK/Q4.0 2000–TongLINK/Q5.0 2003⏹我国最早的交易中间件1994–TongEASY1.0 1994–TongEASY2.0 1996–TongEASY3.0 1998–TongEASY4.0 2000–TongEASY5.2 2003⏹我国最早的应用服务器T ongWeb–TongWeb1.0 2000–TongWeb3.0 2003⏹我国最早的EAI中间件TongIntergrator–TongIntergrator1.0 2002⏹我国最早的中间件厂商1998–TongT ech⏹CCID 开始统计我国中间件市场2000年⏹我国中间件获得的最高荣誉——国家科技进步奖2002主要用途:应用程序的规模不断扩大,特别是Internet及WWW的出现,使计算机的应用范围更为广阔,许多应用程序需在网络环境的异构平台上运行。

中间件的历史与发展

中间件的历史与发展

中间件的历史与发展中间件的历史与发展1. 由来中间件在实际的应用过程中,是对应用软件起到支撑作用,最终用户并不直接使用中间件,中间件不是大众消费类软件产品。

因此,除非是一个行业专业人士,一般不大可能与中间件打交道,不太了解什么是中间件。

因此,在系统软件之中,操作系统、数据库、中间件的三驾马车,中间件是最神秘的。

因为,好歹大家通过Windows基本上会了解操作系统是个什么东西,尽管不会很全面,很专业,毕竟是有感觉的。

数据库,虽然没有直接见过,但基本上明白数据是要一个仓库来储存的,因此,也大致知道数据库管理系统是干什么的。

长期以来,中间件是一个专业化非常强的细分产业。

因为中间件的技术门槛比较高,玩家也不多,无论是国外还是国内都是如此。

因此,行业内对什么是中间件并不特别在意。

而公司名称直接叫中间件的就更少了,另一方面,因为中间件软件还处于发展阶段,还没有完全成熟,因此对中间件的定义也就没有深究,或者权威的说法。

但现在情况有点变化,其中一个原因在于2008年底,国家启动了核高基重大科技专项,在基础软件领域明确提出重点支持操作系统、数据库、中间件、文字处理等基础软件产业的自主创新,几乎一夜之间大大小小的软件公司都宣称是做中间件的了,只要不是做最终应用软件的,他们的产品都叫中间件了,一时间,中间件变得蓬勃发展起来了。

作为中间件行业内的专业化和领先企业来说,大家都重视起中间件来了,这是好事,说明社会上重视了。

对行业的发展和繁荣固然重要,但这也隐含了重大的风险。

中间件名字被滥用,无论是对用户,对这个产业,对政府和投资人来说,都会有负面的影响。

鱼目混珠,泥沙俱下的局面,对中间件产业的正常发展未必就是好事情了,也可能对真正的中间件自主创新带来许多困扰,模糊了中间件的本质,可能会弱化中间件核心技术的创新和发展。

因此,在这种情况下,无论是对行业内,还是行业外,突然什么是中间件的问题变成了一个大问题了。

本文试图就中间件的来龙去脉,外延内涵和前世今生,来一个全面的阐释。

中间件和平台介绍20100705

中间件和平台介绍20100705


1.4. 中间件分类
• – – 应用服务类中间件,为应用系统提供一个综合的计算环境和支撑平台,包括 : ORB: 交易中间件:主要功能是管理分布于不同计算机上的数据的一致性,保障系统处理能力的效率与均 衡负载 ;适用于联机交易处理系统 ;交易中间件所遵循的主要标准是X/open DTP模型,典型的产品 是Tuxedo。 应用服务器中间件:JAVA从2.0企业版之后,不仅仅是一种编程语言,而且演变为一个完整的计算环 境和企业架构。为JAVA应用提供组件容器,用来构造Internet应用和其它分布式构件应用,是企业实 施电子商务的基础设施,这种应用服务器中间件发展到为企业应用提供数据访问、部署、远程对象 调用、消息通信、安全服务、监控服务、集群服务等强化应用支撑的服务。使得JAVA应用服务器成 为了事实上的应用服务器工业标准。由于它的开放性,使得交易中间件和对象请求代理逐渐融合到 应用服务器之中。典型的应用服务器产品包括IBM Websphere Application Server、Oracle Weblogic Application Server和金蝶Apusic Application Server等。 应用集成类中间件,应用集成类中间件是提供各种不同网络应用系统之间的消息通信、服务集成和数 据集成的功能, 包括: – – 消息中间件: 企业应用整合:

1.1 起源---软件危机是中间件发展的最大驱动力
• 中间件出现的驱动力主要来自软件研发过程碰到的种种问题。从软件出现最早是用于科学计算,然后 是计算机辅助设计、辅助制造等等工业应用。在企业管理领域大规模应用后,业务需求不断的变化、 系统不断增加、流程更复杂、系统越来越不堪重负,出现了需求交付方面的重大挑战,以至于人们用 “软件危机”来描述软件工业所面临的困境。 软件危机的四个表现:质量问题、效率问题、互操作问题、灵活应变问题; 造成软件危机的根本原因:异构性、标准规范的滞后。

中间件综述

中间件综述

中间件综述[摘要]:介绍中间件的起源、概念及主要研究内容;借鉴国内外经验,谈中间件的研发、测试和评估方法;最后,结合中间件在近年来遇到的问题展望其未来。

[关键词]:中间件;分布式系统;软件体系结构引言随着应用程序规模的扩大,网络的出现,计算机的应用范围更为广阔,许多应用程序需要在网络环境下的异构平台上运行。

在这种分布异构环境中,通常存在多种软、硬件平台。

对如何集成已有系统并能在新的程序开发中运用已有成果的思考与探索促进了中间件的产生。

国内在中间件领域的起步阶段正是整个世界范围内中间件的初创时期,我们并不比国外晚多少,甚至某些技术还处于世界先进水平。

1.中间件概念和分类1.1什么是中间件首先,中间件是一类软件;中间件不仅仅实现互连,还要实现应用之间的互操作;中间件是基于分布式处理的软件,最突出的特点是其通信功能。

文献[1]给出了中间件的定义:中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。

图1、中间件示意图世界著名咨询机构The Standish Group归纳了中间件的十大优越性。

简要地说:缩短开发周期,节约开发成本,提高开发质量,降低开发失败率,压缩系统初期建设成本,保证已有投资,简化应用集成,减少维护成本,保证技术连续性以求发展与突破,增强产品活力;具体地说:首先,从厂商和用户的角度上,中间件的引入不仅使得开发简便、周期缩短,也减少了系统的运行、管理和维护的工作量,更减少了总体费用(一半左右),这样就实现了厂商和用户的双赢。

其次,从技术发展的角度上,中间件屏蔽了底层操作系统的复杂性,使开发人员面对一个简单而统一的开发环境,减少程序设计的复杂性,便于将注意力集中在自己的业务上,不必再为程序在不同系统软件上的移植而重复工作,从而大大减少了技术上的负担。

中间件作为一个软件层,其重要作用是要将应用软件集成起来像一个整体协调工作,保证我们可以实现粒度相对更大的软件复用。

应用中间件

应用中间件
中间件的引入使原来的状接口类型变成了沙漏状接口类型。接口数目从n×m降到了n+m。
发展历程
发展历程
80年代后期基于客户/服务器的系统设计理念的出现为多用户系统提供了前所未有的双向交互性和灵活性。 客户/服务器系统结构是把图形用户界面和大部分应用逻辑放在客户机上运行,通过将SQL请求送往运行在服务器 上的数据库,对数据进行访问。其最大的优点在于系统结构简单;只要将客户机和服务器通过络联通,利用一些快 速应用开发工具就可以很快地开发出一些部门级的小规模应用。但是,随着信息技术的发展,这种系统结构的缺 陷也逐渐显现出来。
中间件的思想其实并不复杂。假设我们有n个应用,m个操作系统,为了使所有的应用在所有的操作系统上都能 工作,就可能需要n×m个接口。而且,每引入一个新的操作系统,就要重新改写n个应用的源代码;每开发一个新的 应用,就要考虑实现m个不同的版本,以工作于m个操作系统之上。
中间件使这一切变得简单。开发应用程序时不必再关心底层操作系统的类型,而只需专心于应用的逻辑处理 (当然,这只是一种理想状况)。
互操作性
传统中间件在软件的互操作方面,通过标准化的API完成了同类系统之间的调用互操作,但是连接互操作离 不开原有的特定的访问协议,比如CORBA用于的IIOP,JAVA用于的RMI等。而SOA以支持Internet、标准化及操作 系统无关的SOAP协议完成了连接互操作。并且服务的封装一般使用XML协议,它有自定义及自解析的特性,因此 基于SOA的中间件能够完成语义互操作。
其次,当客户/服务器方式应用逐渐推广到企业级的关键任务(Mission-Critical)环境,便出现了一 些’lde题,如系统可扩展性差、解析度低、可管理性差、维护代价高、安全性差、系统间通讯功能较弱。

中间件

中间件

中间件概述专业:计算机应用技术一、中间件的发展动因及其定义(1)发展动因具体地说,中间件屏蔽了底层操作系统的复杂性,使程序开发人员面对一个简单而统一的开发环境,减少程序设计的复杂性,将注意力集中在自己的业务上,不必再为程序在不同系统软件上的移植而重复工作,从而大大减少了技术上的负担。

中间件带给应用系统的,不只是开发的简便、开发周期的缩短,也减少了系统的维护、运行和管理的工作量,还减少了计算机总体费用的投入。

(2)定义为解决分布异构问题,人们提出了中间件(middleware)的概念。

为解决分布异构问题,人们提出了中间件(middleware)的概念。

中间件是位于平台(硬件和操作系统)和应用之间的通用服务,如图1所示,这些服务具有标准的程序接口和协议。

针对不同的操作系统和硬件平台,它们可以有符合接口和协议规范的多种实现。

图1 中间件也许很难给中间件一个严格的定义,但中间件应具有如下的一些特点:1、满足大量应用的需要。

2、运行于多种硬件和OS平台。

3、支持分布计算,提供跨网络、硬件和OS平台的透明性的应用或服务的交互。

4、支持标准的协议。

5、支持标准的接口。

由于标准接口对于可移植性和标准协议对于互操作性的重要性,中间件已成为许多标准化工作的主要部分。

对于应用软件开发,中间件远比操作系统和网络服务更为重要,中间件提供的程序接口定义了一个相对稳定的高层应用环境,不管底层的计算机硬件和系统软件怎样更新换代,只要将中间件升级更新,并保持中间件对外的接口定义不变,应用软件几乎不需任何修改,从而保护了企业在应用软件开发和维护中的重大投资。

Gartner的观点的观点如下:1)终端仿真/屏幕转换中间件:用以实现客户机图形用户接口与已有的字符接口方式的服务器应用程序的互操作。

2)数据访问中间件:为了建立数据应用资源互操作的模式对异构环境下的数据库实现联接或文件系统实现联接的中间件3)远程过程调用中间件:程序员方便地编写客户端应用程序调用位于远端服务器上的过程。

中间件技术

中间件技术

(3)企业信息系统层(数据层) (Enterprise Information System Tier),由数据库计算机、 主机或原有系统组成。 服务器组件(“程序”)在 完成服务的过程中通过资源管理 器(数据层)存取它管理的数据, 或者说请求资源管理器的数据服 务。
客 户 层
应 用 服 务 器 数 据 层
--------消息中间件:用来屏蔽掉 各种平台及协议之间的特性,进 行相互通信,实现应用程序之间 的协同;如J2EE中的JMS。
--------交易(事务)中间件:是 在分布、异构环境下提供保证交 易完整性和数据一致性的一种环 境平台;如Goddess。
--------对象中间件:在分布、异 构的网络计算环境中,可以将各 种分布对象有机地结合在一起, 完成系统的快速集成,实现对象 重用。 --------此外还有无线移动中间件 、J2EE应用服务器、安全中间件 等。
--------终端仿真/屏幕转换:用以 实现客户机图形用户接口与已有 的字符接口方式的服务器应用程 序之间的互操作;
--------数据访问中间件:是为了 建立数据应用资源互操作的模式, 对异构环境下的数据库实现联接 或文件系统实现联接的中间件;
--------远程过程调用中间件:通 过这种远程过程调用机制,程序 员编写客户方的应用,需要时可 以调用位于远端服务器上的过程; 如J2EE中的RMI。
Web浏览器 容器+组件
应用客户机 容器+组件
容器+组件
数据库访问代理和管理
一个应用服务器平台可以认 为是一个为用户应用组件提供服 务的容器。
具体应用的组件(“程序”) 驻留在容器中,充分利用容器提 供的各种服务。
J2EE技术提供了许多分布式 应用所需要的资源。

我国自主可控中间件发展研究

我国自主可控中间件发展研究

我国自主可控中间件发展研究【摘要】我国自主可控中间件是我国在信息技术领域的重要研究方向之一。

本文通过分析我国自主可控中间件的背景和意义,探讨了其发展的现状、挑战、机遇及关键技术,同时展望了其应用前景。

文章指出,我国自主可控中间件的发展既面临着技术上的挑战,也蕴含着巨大的发展机遇。

在结论中,提出了加强技术研究与国际合作的建议,并对我国自主可控中间件未来的发展进行展望。

这些研究成果对我国信息技术领域的发展具有重要意义,为我国信息化进程提供了坚实的技术支持和保障。

【关键词】关键词:自主可控中间件、发展研究、背景、意义、现状分析、挑战、机遇、关键技术、应用前景、建议、展望。

1. 引言1.1 我国自主可控中间件发展研究的背景我国自主可控中间件发展研究的背景可以追溯到我国信息化建设的加速推进和国家安全意识的增强。

随着经济的快速发展和科技的不断进步,我国对信息技术的需求也日益增长。

中间件作为连接和支撑各种信息系统和应用的重要基础软件,对于保障国家信息安全、促进企业信息化以及提升经济发展水平都起着至关重要的作用。

当前我国在中间件领域依然存在着对外依赖度高、核心技术受制于人等问题,这些问题制约了我国在信息化领域的自主发展和安全防护能力。

加强自主可控中间件的研究和发展,提升中间件自主创新能力,对于我国实现信息化自主可控是至关重要的。

在国家战略层面上,我国提出了“自主可控、安全可靠”信息技术基础设施的战略目标,自主可控中间件的研究和发展正是贯彻这一战略目标的重要举措。

国际形势的不确定性和外部环境的复杂性也要求我国在中间件领域加强自主研发能力,确保信息安全和国家利益的长远发展。

1.2 我国自主可控中间件发展研究的意义我国自主可控中间件发展研究的意义在于推动我国信息化建设的进步和发展。

随着信息技术的不断发展,中间件作为连接不同软件和硬件系统的关键技术,在信息系统集成和应用开发中发挥着越来越重要的作用。

而我国自主可控中间件的研发可以提升国家在信息安全、数据保护和网络安全等方面的控制力和影响力。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
⑴它提供了通道的功能,可保证应用系统数据的可 靠传输; ⑵它起着桥梁的作用,达成异构应用资源之间的互 联互通; ⑶它是分布式应用的集成开发框架,促成企业分布 式应用的有机集成; ⑷作为平台,它可有效实现分布应用的分阶段顺利 部署; ⑸它起着过滤网的作用,可有力保护关键信息的安 全。
35
1.3 续
RPC的通信模型
Client
server 等待 接收调用信息; 抽取参数并分析; 调用所指的过程; 调 用 执行远程过程
Send(remote call pi(…)) (发送“请求服务”信息)
请求服务
等 待 回 复 Receive(ans) 接收回复信息 继续
返回执行结果 返回调用结果
中间件技术
1
要求:点到考勤、作业、实验报告 考试:平时20%+实验20%+期末考试60 % 目的与学习方法:理解基本知识、基本理 论。掌握中间件的基本结构。课堂学习与 课后练习相结合。思考现实中的分布式软 件系统可能的结构,可能的实现技术与实 现方法。

教材与参考书目 教材:
《中间件技术原理与应用》 张云勇 清华大学出版社


⑵只提供了一部分平台的实现
⑶应用开发者要面临设计选择
①过分追求中间件功能的全面性 ②过分强调选择国外产品 ③不能准确认识中间件的作用
28
1.2续
*中间件技术发展趋势

⑴中间件的发展需要规范化


⑵应用需求导致技术格局多样化
⑶构件化和松散耦合 ⑷底层的中间件持续走稳 ⑸高层的中间件成为市场新宠 ⑹新技术与产品的推出速度放缓 ⑺实用化是重要的发展趋势
34
1.3 续 RPC工作流程
客户运行 RPC调用
Network 服务调用 过程调用 服务过 程执行 过程返回 请求返回
客户继续执行
RPC返回
图2-5 RPC工作流程
RPC一般采用调用/返回模式,多用于应用程序之间的通信,采用同步方式。 RPC程序之间的同步通信一般采用Request-Wait-Reply方式,因此RPC更适应小 型简单而不需要采用异步通信方式的应用。

1.1开放系统与互操作性概述
计算模式的发展过程
基于主机的系统(分时共享、资源共享)
两层Client/Server系统
三层(n层)体系架构


表示层—— 用户层
业务逻辑层——应用层
数据层——数据库服务器
基于Web的三层(N层)体系结构
6
1.1续
开放系统基本组成
硬件 包括PC,工作站,大中型机,各式各样的
Send(ans) 发送回复信息
36
1.3 续
RPC执行过程
Client Process Local return Local call 10 1 Server Process call work return 5 6
OP4 Client-stub OP1 9
OP2 Server-stub OP3 4
③同步性
当客户机发出请求时,服务器进程处于运行状态。 ④复杂性
远程调用的实现环境可能要用系统级的任务来创建,但 一旦完成,对程序员就是透明的了。
40
1.3 续 远程过程调用的特点
缺点:⑴需要进行系统级的配臵;
⑵RPC 并不支持对象。
CORBA的IIOP MTS的DCOM Java的 sockets——应用级协议的编码交换
2.应用开发(Application Development) 工具
AD工具用来帮助开发内含“透明动用对方”成分的 应用软件,或改造原有的无透明动用能力的应用软 件。AD工具是中间件中的必备部分。
18
1.2续
合作方 A 合作方 B 合作对象透明设施 T1 下层设备透明设施 T2 平台 网络 平台 网络 平台 合作方 C
动态协作
参与协作的应用允许位臵透明性、迁移透明性、负载平衡 性等需求。
12
1.2续 应用1 服务器1
应用2
服务器2
应用3
服务器3
13
极端情况为:n结点完全连通图 ,边有n(n-1)/2条
1.2续 应用1 服务器1
应用2
中间件
服务器2
应用3
服务器3
14
1.2续
应用软件 中间件 网络软件 操作系统

软件 网络
嵌入式设备,移动设备;
各类操作系统、应用软件; 各类网络结构、网络协议。 ⑵并发行 ⑹异质性 ⑽发展性 ⑶无全局状态 ⑺自主性 ⑾移动性 ⑷部分失败 ⑻联合型
开放系统面临的问题
⑴远程性 ⑸异步性 ⑼伸缩性
7
1.1续 开放系统特点
⑴开放的:提供可移植性和协同工作; ⑵集成的:有助于对付异质性; ⑶灵活的:有助于对付移动性;
⑷模块化的:灵活性的基础; ⑸可联合的 ⑹可管理的 ⑺安全的 ⑻透明的:支撑软件和硬件的异质性; ⑼满足服务质量需求
8
1.1续 开放系统必具特性
可移植性(Portability) 可互操作性(Interoperability) 可伸缩性(Scalability) 易获得性(Availability)
26
1.2续
*中间件的优越性:
1.企业应用方面


2.应用程序方面

缩短应用开发周期
减少项目开发风险
透明地同其他应用程 序交互
应用程序质量可维 护性
增加产品吸引力

与运行平台提供的网 络通信服务无关
具有良好的可靠性和 可用性 具有良好的可扩展性
27



1.2续
中间件发展面临的问题

⑴不同厂商的实现很难互操作
38
1.3 续
RPC的语义

Last-of-many:被调用的过程可能执行若干次,但 规定其最后一次执行的结果作为返回结果。 At-most-once:若调用者收到了回复消息,则称被 调用的过程正确地完成了它的一次(仅仅一次) 执行。 At-least-once:远程调用过程至少执行一次,回 复消息可能返回一次或多次。
参考书:
《COM原理与应用》 潘爱民 《CORBA原理及应用》 朱其亮 《精通EJB》 [美]Ed Roman 清华大学出版社 北京邮电大学出版社 电子工业出版社
3
第1章 中间件产生背景及分布式计算环境 主要内容

开放系统


互操作性
中间件
4
重点: 中间件的概念、分类

难点: 远程过程调用及其增强


30
1.3 续
RPC调用模型
主程序 main(…) . . . 调用A . . . 退出
机器1 主程序
过程A代码 A(…) . . . 调用B . . . 退出
机器 2 子程序
过程B代码 B(…) . . . . . . . 退出
机器3 子程序
31
1.3 续 远程过程调用RPC概念
RPC是从一台机器或一个进程调用另一台机器或另 一个进程的服务或方法。
2
RPC Routine wait receive transmit 3 8
RPC Routine
7
receive
transmit
37
1.3 续
通信协议
支持两种传输协议:TCP、UDP TCP:连接、可靠、低效。保证要么把调用传递到 远程过程且接受应答,要么报告通信无法进行。 UDP:无连接、不可靠、高效。使用UDP的远程过 程调用也许会丢失或重复。



Exactly-once:若服务器正常,则远程过程恰好执 行一次,并返回一个调用结果。
39
1.3 续 远程过程调用的特点
①客户/服务器模式
客户端的应用调用一个位于远端服务器平台的进程或服 务,RPC实际上是通过C/S方式实现的。
②数据封装性
远端过程调用负责捆绑参数,实现不同平台之间参数的 传递,发送参数到远端过程。
开放系统构造
用轮廓勾划; 轮廓由AUSPICE七个成分组成; 对轮廓的各成分标准化,即成开放系统。
9
1.1续
开放系统开放程度表
系 统 管 理
用 安 编 互 通 户 全 程 操 信 界 性 服 作 服 面 务 服 务 务
信 息 实 体
10
1.1续 互操作性
定义: 在一个由异质实体构成的网络环境中,当应用在 网络的结点上运行时,它可以透明地动用网中其 他结点上的资源,并借助这些资源与本结点上的 资源共同来完成某个或某组任务。 本质: 从异质环境(异种体系结构、异种操作系统、异 种网络等)中获得资源的透明动用能力。
远程过程调用是创建分布式应用的一种方法,来源 于Unix操作系统的处理思想,被普遍认为是创建 分布式应用的有效方法。 从程序员的角度,RPC采用常规的编程模式:程序 代码调用远端过程并将结果返回。当使用RPC时, 只需编写很少的网络程序代码,绝大部分代码由 IDL(Interface Define Language)生成。
中间件的层次结构
T1实现难度>T2实现难度
19
中间件基本框架
应用接口(API)层 中间件服务层 (通信,控制,计算,管理,输出,信息等) 应用平台层 (Unix、NetWare、NT、VAX、OPENVMS等) 传输协议层 (TCP/IP、IPX/SPX、NetBIOS、OSI等)
中间件的基本功能框架结构
1.ቤተ መጻሕፍቲ ባይዱ续
第四层
第三层
第二层
第一层
20
1.2续
基于中间件的软件系统基本模型
21
相关文档
最新文档