中间件复习资料顾秀坚.doc

合集下载

中间件复习

中间件复习

☐基于主机的系统缺陷:系统简单功能较少移植性差☐客户机/服务器(Client/Server)结构客户机提供对信息或服务的请求,服务器提供这种信息或服务。

⏹QQ聊天客户端与服务器⏹电子邮件客户端与服务程序⏹ERP客户端与服务器☐C/S结构特点:交互性强、网络通信量低、响应速度快、利于处理大量数据。

两层结构的缺陷☐客户端的可移植性不好⏹处理复杂必然牵涉更多的移植性问题⏹每个客户端上都要安装数据库驱动程序☐系统的可维护性不好⏹业务逻辑与人际交互界面交织在一起⏹发生一次升级,则所有客户端的程序都需要改变☐客户端的负担仍比较重仍然需要客户端进行复杂的数据处理☐数据的安全性不好B/S(Browser/Server)结构即浏览器/服务器结构。

它是对C/S结构的变化或者改进。

☐客户端采用浏览器运行软件。

☐主要特点是分布性强、维护方便、开发简单且共享性强、总体拥有成本低。

但数据安全性问题、对服务器要求过高、数据传输速度慢、软件的个性化特点明显降低。

☐三层(n层)体系结构⏹表示层——客户层⏹业务逻辑层——中间层⏹数据层——资源管理器☐数据层:执行数据逻辑,运行SQL或存储过程☐中间层:执行业务逻辑,向数据库发送请求☐客户层:用于界面引导,接受用户输入,并向应用服务器发送服务请求,显示处理结果封闭系统:计算机的所有硬件与软件均由单一的厂商提供,或者由该厂商指定的经过合法授权的厂商协助制造。

遗留的产品:苹果的Mac系列计算机。

☐开放系统基本组成⏹硬件PC,工作站,大中型机,各式各样的嵌入式设备,移动设备⏹软件各类操作系统、应用软件⏹网络各类网络结构、网络协议开放系统面临的问题⑴远程性⑵并发行⑶无全局状态⑷部分失败⑸异步性⑹异质性⑺自主性⑻联合型⑼伸缩性⑽发展性⑾移动性开放系统特点⑴开放的:提供可移植性和协同工作⑵集成的:有助于对付异质性⑶灵活的:有助于对付移动性⑷模块化的:灵活性的基础⑸可联合的⑹可管理的⑺安全的⑻透明的:支撑软件和硬件的异质性⑼满足服务质量需求开放系统必具特性☐可移植性(Portability)☐可互操作性(Interoperability)☐可伸缩性(Scalability)☐易获得性(Availability)•互操作性:在一个由异质实体构成的网络环境中,当应用在网络的结点上运行时,它可以透明地动用网络中其他结点上的资源,并借助这些资源与本结点上的资源共同来完成某个或某组任务。

中间件重点复习题

中间件重点复习题

中间件重点题目9. JDBC-ODBC 桥的数据源URL 的格式是什么?jdbc:odbc:dbsource ,username,password17 jdk1.x 的RMI JNDI 命名目录服务器是什么?Rmi.registry24. 什么是Stub, Skelton,他们的作用是什么?存根序列化骨架的参数列表骨架调用远程方法并且将序列化的结果传给存根27. 在jdk1.x(x>5)把一个IDL 文件映射成Java 目标代码的编译器及其主要选项是什么?-fall (全部命令:idlj –fall 接口文件)28. 什么是中间件?试举出若干重要的技术?介于应用层和系统层的软件rmi ,rmioveriiop ,cobra ,j2ee29. DCOM 是中间件技术吗?Y es35. 标注@Stateless 是做什么用的?表明当前POJO是无状态会话bean36. 对于GlassFish EJB Container 来说,标注@Stateless(mappedName=”ejb/StudentBean”)属性值mappedName 指的是什么?指定ejb的全局名,通常ejb容器会根据mappedName类生成JNDI名40. 标注@Id 是做什么用的?表明主键值生成方式.41. 标注@Entity 是做什么用的?表示当前类为实体46. 标注@NamedQueries({@NamedQuery(name=”Student.findAll”,query=”selects from student s”), @NamedQuery(name=”Student.findById”,query=”select sfrom student where s.id = :id”)})出现在什么类型的Bean?含义是什么?NamedQueries 用于指定使用java Persisitence查询语句编写的指定查询它在其中表定为静态查询查询名称的范围限制在持久性单元中.52. 一个IDL 文件有三级模块嵌套module mia { module ham { module football {……}…..}……}试问编译成Java 目标代码后,最内层的某个接口所在的包是什么?Mia.ham.footabll;54. 假定使用GlassFish 作为EJB 容器,那么在客户端应该使用来自EJB 容器的那几个jar 文件Javaee Appserve-ext Apppserve-deployment-client Appserve58. 简单描述通过JDBC-ODBC 桥在一个Java 应用中连接到一个Exel 电子表格,共有几层软件层?4 jdbc jdbc-odbc driver odbc obdc-excel driver59. 如何配置ODBC 数据源?控制面板——管理工具——数据源(ODBC)——系统DNS(用户DNS也可)——添加——指定数据库驱动——输入数据源名称——找到你的数据库61. 假定我们配置了一个连接到一个Exel 电子表格的名为rmiiiop_ds,那么在Java 应用中对应的URL 格式是什么?Jdbc:odbc:rmiiop_ds63. EJB 分几种?她们的意义是什么?会话bean 实体bean 消息驱动bean64. 在EJB3.0 模型下,业务逻辑由什么类型的EJB 承担?Data Layer 又由什么类型的EJB?实体bean session bean以上改变为选择题简单题1 corba 开发步骤1 定义IDL接口2 IDL接口文件的编译为目标语言3 实现远程对象4 开发Server5 开发Client6 编译Server Client7 测试这些文件2 客户端stub(存根的作用)1编译时确定的的静态接口,位于客户对象本地, 对客户来说相当于远程的执行对象。

软件中间件复习资料.doc

软件中间件复习资料.doc

题型:判断题,名词解释,简答题,程序题(DAO, IDL)第一章(1)中间件定义:中间件是一•种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术Z间共享资源,中间件位于客户机服务器的操作系统Z上,管理计算资源和网络通信。

(2)中间件特点:满足大量应用的需要,运行于多种硬件、数据库及操作系统平台支持分布式计算,提供跨网络、底层平台的透明性应用或服务的交互功能,支持标准协议支持标准的接口(3)中间件能为我们软件开发带来那些帮助?屮间件屏蔽了底层操作系统和数据库的复杂性,使程序开发人员面对一个简单而统一的开发环境,减少程序设计的复杂性,将注意力集中在自己的业务上,不必再为程序在不系统软件上的移植而重复工作,大大减少技术上的负担;也减少了系统的维护、运行和管理的工作量及计算机总体费用的投入。

第二章(1)C/S休系结构特点:无论是客户端还是服务端都需要特定的软件支持。

没能提供川户期望的开放环境,适用于Intraneto服务器端运行负荷较轻。

数据的存储管理功能较为透明。

C/S 体系结构的劣势是高昂的维护成本投资大。

(2)B/S体系结构特点:1.简化了客八端的工作,2.瘦客八端结构。

3.对数据库的访问和应用程序的执行将在Sewer上完成。

4.把技术维护人员从繁重的维护升级工作中解脱出来。

(3)B/S体系结构不足方而:1.浏览器应用于Web应用系统时,许多功能不能实现或实现困难。

2.复杂的应用构造困难。

3.HTTP nJ靠性低,采用浏览器进行系统维护不安全。

4.Web 服务器同时要处理客户请求以及与数据库联接,负载过重。

5.业务逻辑和数据安全不足。

(4)多层应用体系结构特点:1.安全性,2.稳定性,3.易维护,4.快速响应,5.系统扩展灵活。

(5)应用服务器位于Middle Tier提供哪些服务?(6)J2EE概念:ava EE是一种利用Java 2平台简化企业解决方案的开发、部署和管理相关复杂问题的体系结构。

中间件总复习题及答案

中间件总复习题及答案

中间件总复习题第一章中间件产生的背景1、C/S结构与B/S结构各有何特点?⑴系统的性能在系统的性能方面,B/S占有优势的是其灵活性。

任何时间、任何地点、任何系统,只要可以使用浏览器上网,就可以使用B/S系统的终端。

近年来,智能手机、智能家电、PDA等传统电脑之外的上网方式发展迅速,这在一定程度上为B/S结构增加了砝码。

不过,采用B/S结构,客户端只能完成浏览、查询、数据输入等简单功能,绝大部分工作由服务器承担,这使得服务器的负担很重。

采用C/S结构时,客户端和服务器端都能够处理任务,这虽然对客户机的要求较高,但因此可以减轻服务器的压力。

而且,由于客户端使用浏览器,使得网上发布的信息必须是以HTML格式为主,其他格式文件多半是以附件的形式存放。

而HTML格式文件(也就是Web页面)不便于编辑修改,给文件管理带来了许多不便。

⑵系统的开发最新的C/S结构和B/S结构都是建立在现在被称为中间件的产品基础之上,也就是建立在应用服务器(Web服务器)中间件、消息中间件和交易中间件等基础之上。

采用C/S结构时,客户端和服务器端都要处理任务,客户端也需要编程,这对应用开发者提出了较高的要求,这使得应用程序的维护、移植和互操作变得复杂,成了C/S的一大缺陷。

如果客户端是在不同的操作系统上(比如Windows 2000/2003 Server以及不同版本的Linux),C/S结构的软件需要开发不同版本的客户端软件。

如果产品经常需要更新换代,那么升级系统时候需要付出的高代价以及工作的低效率会在一定程度上制约企业的应用。

但是,与B/S结构相比,C/S技术发展历史更为“悠久”。

从技术成熟度及软件设计、开发人员的掌握水平来看,C/S技术应是更成熟、更可靠的。

而对于非常复杂的应用,B/S方式目前尚没有合适方式进行开发。

⑶系统的升级维护C/S系统的各部分模块中有一部分改变,就要关联到其他模块的变动,使系统升级成本比较大。

B/S与C/S处理模式相比,则大大简化了客户端,只要客户端机器能上网就可以。

中间件(去年软件复习资料)

中间件(去年软件复习资料)

中间件复习题
1.你认为什么是中间件?中间件的主要作用是什么?
2.比较B/S结构与C/S结构的优缺点。

3.ORB、对象适配器的作用分别是什么?
4.描述典型CORBA程序的开发实现过程(静态工作模式)。

5.什么是POA策略?列举几种标准的POA策略并简要解释。

6.消息发送的模式有哪些?
7.说明中间件在电子商务及电子政务系统中的典型应用场景。

8.简述基于POA实现的客户请求传递过程。

9.什么是消息中间件? 描述一种消息中间件的应用场景。

10.EJB组件有哪几种?其特点分别是什么?
11.RMI存根和框架的作用?
12.比较JSP与Servlet。

13.简述什么是POA?简述创建并激活POA的过程?
14.简述什么是值类型?值类型的作用和典型用法是什么?
15.现代应用系统的主要特征是什么?
16.2层和3层系统的特点是什么?
17.什么是SOAP? 有什么特点?可采用的底层传输协议有哪些?
18.什么是MVC ?
19.你认为如想成为中间件产品生产或应用公司的合格技术人员,应该具备哪些技术
和素质?
20.Servelet的执行过程?最常使用的接口有什么?。

《软件构件与中间件技术》全真试题

《软件构件与中间件技术》全真试题

学习中心_________姓名_____________ 学号西安电子科技大学网络与继续教育学院《软件构件与中间件技术》全真试题(开卷90分钟)题号一二总分题分31 69得分一.多项选择题(共12小题,31分。

按照要求的选项个数选择)1. 在3层结构的分布式系统中,()包含了系统的核心业务逻辑。

(选1,2分)(A)客户层(B)中间层(C)数据层(D)以上都不是2. 典型的集成中间件为开发人员提供的三种基本支撑为:(选3,3分)()(A)提供构件运行环境(B)提供互操作机制(C)提供公共服务(D)提供数据库管理3. 构件通过封装隐藏其实现细节,构件接口是构件对外公布的唯一信息,使用者只能通过接口了解并使用组件。

CORBA对象的接口是用()定义的,EJB构件的接口是用()定义的,Web Service的接口是用()定义的。

(各选1,3分)(A)WSDL (B)Java interface (C)自然语言(D)OMG IDL4. 在支持分布式对象访问的桩/框架(Stub/Skeleton)结构中,负责替客户端完成底层通信相关工作的是(),负责替服务端完成底层通信相关工作的是()。

(各选1,2分)(A)客户端桩(Stub)(B)构件的接口(C)服务端框架(Skeleton)(D)分布式对象自身5. 在下图所示的OMA参考模型中,哪些涵盖了我们开发一个基于CORBA的应用时可以直接使用、不需自己实现的功能:(选3,3分)()(A)对象服务(B)领域接口(C)公共设施(D)应用程序接口6. CORBA IDL文件中可以定义模块、类型、常量、异常、接口、值等6种规格说明,其中IDL文件的核心内容是:(选1,2分)()(A)类型(B)常量(C)接口(D)值7. CORBA规范可以实现的可互操作性包括:(选3,3分)()(B)不同平台(如不同操作系统)与语言之间的可互操作性(C)不同厂商ORB产品之间的可互操作性(D)不同体系结构中的组件的互操作性(部分支持)(E)不同CORBA规范版本之间的可互操作性8.下面关于EJB的会话构件(Session Bean)的描述正确的有:(选2,2分)()a)Session Bean存在于客户应用与应用服务器交互的时间段内,Session bean中的数据不保存在数据库中。

中间件复习题01

中间件复习题01

中间件复习题一、判断题1.close()函数用于关闭套接字描述符,这个函数的调用会引发TCP的中止连接操作。

(0)2.在TCP的客户端程序中,如果connect()函数调用失败,则套接字符不能再使用,必须关闭。

(1)3.shutdown(int sockfd, int howto)函数,可以根据参数howto关闭指定方向的数据传输。

(1)4.getsockname()函数返回套接字对应的远程地址。

(0)5.inet_addr()函数既可用于IPV4也可用于IPV6的地址转换。

(0)6.Linux支持多种套接字类型,其中SOCKET_STREAM类型对应的是UDP协议。

(0)7.绑定地址时,可以指定地址为通配地址:INADDR_ANY,其值一般为0,它通知内核选择IP地址。

(1)8.函数bind返回的一个常见错误是:所绑定的地址已被其他进程使用,我们可以通过设置套接字选项SO_REUSEADDR来避免产生这个错误。

(1)9.在UDP套接字程序中,客户端与服务器通信时,必须使用sendto()和recvfrom()函数。

(0)10.TCP的服务器端绑定地址时,可以同时指定绑定的地址和端口号,也可以指定其中之一,甚至一个也不指定。

(1)11.在TCP套接字程序中,当read()函数收到FIN数据时,其返回-1。

(0)12.在TCP套接字程序中,客户端程序要生成二个套接字描述符。

(0)13.在多线程并发服务器中,为了防止父子线程对描述符的操作造成混乱,在主线程创建子线程后,应在父线程中关闭不用的已连接描述符。

(0)14.在线程专用数据中,如果一个进程中有n个线程,就有n个关键字key。

(0)15.在多进程执行程序中,父进程不能先于子进程退出。

(0)16.pthread_key_delete(pthread_key_t key)函数删除进程内的TSD表示的关键字,该函数执行时要先检查TSD是否有绑定值。

(0)17.tpthread_join()可以等待可分离线程的结束。

中间件技术知识点及习题

中间件技术知识点及习题

第10章中间件技术10.1 基本内容分析10.1.1 本章重要概念(1)中间件的定义和作用(2)ODBC分层的体系结构:应用程序,驱动程序管理器,DB驱动程序,ODBC 数据源。

(3)ODBC接口:应用程序基本流程,ODBC句柄,ODBC连接,SQL语句的执行。

ODBC两套符合性级别。

典型的DB应用系统开发工具。

(4)JDBC的基本功能,JDBC的结构,JDBC接口。

10.1.2 本章的重点篇幅(1)ODBC分层的体系结构(教材P403的图10.2)。

(2)ODBC应用程序的基本流程(教材P408的图10.6)。

(3)JDBC驱动程序(教材P427-428),JDBC API接口(教材P430)。

10.2 教材中习题10的答案10.1什么是中间件?有什么作用?答:中间件是分布式环境中保证OS、通信协议、数据库等之间进行对话、互操作的软件系统。

中间件的作用是保证了客户和服务器间的联系,使网络、数据库、操作系统对于应用软件的开发界面透明化。

10.2 试解释中间件的三个透明性。

答:中间件的网络透明性是指中间件能支持所有类型的网络。

中间件的服务器透明性是指不管服务器上的DBMS是何种型号(ORACLE、SYBASE、DB2等),一个好的中间件都能通过标准的SQL语言与不同DBMS上的SQL语言连接起来。

中间件的语言透明性是指客户机可用任何开发语言进行发送请求和接受回答,被调用的功能应该像语言那样也是独立的。

中间件还应该保证开发语言的数据类型和服务器上数据库使用的数据类型之间能够相互转换。

10.3 ODBC技术与传统的数据库编程方式有什么区别?答:传统的DB编程方式是“主语言+DML”,但一个应用程序却不能访问不同DB服务器上的数据。

ODBC技术实际上是一个公共接口API,使用ODBC技术,同一个应用程序就可以访问不同DB服务器上的数据。

10.4 ODBC技术有什么作用?其卓越贡献是什么?答:ODBC技术的作用是使应用程序与DBMS在逻辑上可以分离,使应用程序具有数据库无关性。

西北农林科技大学中间件考试重点

西北农林科技大学中间件考试重点

目录•开放系统与互操作分布任务已不只是在单机上运行,而是由网络中多台计算机上的相关应用共同协作完成;异构计算机硬件、操作系统、网络协议、数据库系统以及开发工具种类不同;动态协作参与协作的应用允许位置透明性、迁移透明性、负载平衡性等需求。

•中间件定义中间件(Middleware)是一种软件,处于系统软件(操作系统和网络软件)与应用软件之间,它能使应用软件之间进行跨网络的协同工作(也就是互操作),这时允许各应用软件之下所涉及的“系统结构、操作系统、通信协议、数据库和其它应用服务”各不相同。

中间件分类(1)终端仿真/屏幕转换中间件(2)数据访问中间件(3)远程过程调用中间件(4)面向消息中间件(5)事务(交易)中间件(6)分布式对象中间件中间件功能跨平台,包括不同的网络,主机、数据库支持复杂的应用模式不同应用系统的集成保证系统的处理效率保证系统的高可用性保证系统的动态扩展能力提供调试,维护,管理工具保障系统安全加快开发周期,保证质量远程过程调用中间件(RPC)•本地过程调用的扩展,可透明地调用远地提供的服务,无需了解底层网络协议。

•提供了数据表示、可靠传递、服务定位功能•以“过程”作为基本单位调用,采用C/S模型进行远程通讯。

•实现了七层协议中会话层的功能。

•为实现分布式计算提供简单实现途径。

•RPC是DCE,DCOM,CORBA的通讯基础。

RPC系统结构桩:1 初始化并与远程对象所在的虚拟机连接2 将参数打包(marshals),传递到远程虚拟机3 等待结果4 解包(unmarshals)返回值和异常5 将返回值返回给调用者用C实现RPC过程IDL:接口定义语言,只负责定义接口,与实现语言无关。

CORBA,DEC,DCOM均有使用远程方法调用RMI•可看做Java版本的RPC•以“对象”为基本单位调用,实现远程对象之间的无缝调用。

•为Java分布式计算提供简单而直接的途径•RMI是EJB的通讯基础RMI系统结构桩:1 初始化并与远程对象所在的虚拟机连接2 将参数打包(marshals),传递到远程虚拟机3 等待结果4 解包(unmarshals)返回值和异常5 将返回值返回给调用者框架:1 解包客户端输入的远程方法参数2 调用实际的远程对象方法3 将结果打包返回给调用者RMI实现过程RPC与RMI和其他中间的关系分布式计算环境(DCE)•分布计算环境(DCE:Distributed Computing Environment)是开放软件基金会(OSF:Open Software Foundation)制定的以远程过程调用(RPC)为核心的一系列规范•提供线程服务、RPC服务、目录服务、安全服务、分布式文件服务以及时间服务。

JavaEE复习资料

JavaEE复习资料

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

中间件的特征:独立于系统;用于分布式环境;本身是开发平台;可以实现应用之间的互操作;具有网络通信功能中间件的分类:把支持单个的应用系统或解决一类问题的中间件称为底层中间件,一般包括交易中间件、应用服务器、消息中间件、数据访问中间件。

把用于与各种应用系统关联,完成系统整合的中间件称为高层中间件,一般包括企业应用集成中间件、工作流中间件、门户中间件等。

中间件的特点:满足大量应用的需要;运行于多种硬件和操作系统平台;支持分布式计算;提供网络、硬件、操作系统的透明性的交互功能;支持标准的协议;支持标准的接口中间件的作用:促进软件标准化;简化最终开发;保护已有投资;稳定应用环境;集成和协调应用软件Web应用和应用服务器的发展:静态网页技术;动态网页技术;C/S体系结构模式与B/S体系结构模式;多层应用体系结构HTML(Hyper Text Markup Language,超文本标记语言)CSS (Cascading Style Sheets,层叠样式表单)CGI(Common Gateway Interface,通用网关接口)ASP(Active Server Page,动态服务器页面)JSP(Java Server Page,Java服务器页面)PHP(Hypertext Preprocessor,超级文本预处理语言)CORBA(Commen Object Request Broker Architecture,公共对象请求代理架构)Java EE应用模式:使用分布式多层应用来解决企业应用问题。

遵循“实际问题→应用逻辑→组件→应用系统”的工作模式。

工作流程:按照应用系统的需求分解为若干不同的部分和不同的功能,寻找到适合需要的全部组件,搭建出这些不同的部分和不同的功能。

中间件复习考试重点

中间件复习考试重点

一、N层结构:二、Web应用程序结构WAR文件:(1)应用程序所需但不能通过根目录访问的所有文件集合(2)是一个完整的web应用程序JAR文件:(1)常对.class文件打包(2)安全性:数字签名(3)性能:applet (4)大小:压缩(5)版本(6)可移植性EAR文件:企业存档三、servlet概念、原理、配置、方法、应用Servlet概念:服务器小程序Servlet管理:生命全过程:1、容器负责装入servlet并对其进行实例化,准备好可以使用;2、容器通过调用init()方法对其进行初始化。

接着通过init()方法传递一个实现了servletConfig接口的对象,该对象为servlet提供了对实现了ServletContext接口对象的访问能力(serlvet运行环境)3、当servlet初始化不成功时,抛出一个UnavailableException或ServletException异常,该servlet会被释放,容器尝试实例化和初始化下一个新的serlvet4、当初始化完成后,servlet可以处理客户请求了,请求和响应信息分别封装在对象ServletRequest和ServletResponse中,这些对象然后会被容器传递给serlvet的service()方法;5、处理请求过程中,如果发生异常,则容器被迫清理相关请求,并可能调用destroy()方法6、一旦容器决定从服务中删除当前servlet,必须让其service()方法调用结束,然后调用destoy()方法,此后容器将释放该servlet实例,进行垃圾回收。

Servlet配置: web.xml<servlet><servlet-name>HelloWorldServlet</servlet-name><servlet-class>HelloWorldServlet</servlet-class></servlet><servlet-mapping><servlet-name>HelloWorldServlet</servlet-name><url-pattern>/HelloWorldServlet</url-pattern></servlet-mapping>Servlet方法:public void doGet(HttpServletRequest req, HttpServletResponse res)throws ServletException, IOExceptionpublic void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException,IOExceptionpublic Object getAttribute(String name)•public String getServletContext()•public String getParameter(String name)几个重要问题:1、获取初始化参数–Servlet接口定义了一个必须实现的方法–Public ServletConfig getServletConfig()2、线程问题–容器通过建立一种彼此分离的线程机制处理每个请求,service()方法可以由容器在不同的线程中同时调用以处理众多不同的请求–线程安全:为防止类变量在service()方法中的被不同的线程修改,需要进行同步,还可以通过SingleThreadModel接口处理四、web容器中对象的有效作用范围:application:全局作用范围,整个应用程序共享,就是在部署文件中的同一个webApp共享,生命周期为:应用程序启动到停止。

中间件总复习题及答案

中间件总复习题及答案

中间件总复习题及答案一、简答题1. 什么是中间件?中间件是一种位于操作系统和应用程序之间的软件,用于协调和管理不同系统之间的通信。

它提供了一组工具和服务,用于处理分布式环境中的通信、数据传输和事务处理。

2. 中间件的主要功能是什么?中间件的主要功能包括路由和调度、数据传输和转换、安全性和可靠性、事务处理和流量控制等。

它可以帮助应用程序实现异步通信、负载均衡、容错处理等功能。

3. 中间件有哪些常见的类型?常见的中间件类型包括消息队列中间件、数据库中间件、Web服务器中间件、应用服务器中间件、远程方法调用中间件等。

4. 请简要介绍消息队列中间件的作用和特点。

消息队列中间件用于实现应用程序之间的异步通信。

它将消息发送到队列中,接收方从队列中获取消息并进行处理。

消息队列中间件可以平衡系统负载、提高应用程序的可扩展性和可靠性,并支持消息的持久化存储和事务处理。

5. 中间件如何提高系统的可靠性和容错性?中间件可以通过实现容错机制和高可用性架构来提高系统的可靠性和容错性。

例如,使用集群来提供冗余和负载均衡,使用故障转移机制来实现自动故障恢复,并提供监控和告警功能。

中间件还可以支持数据备份和恢复,保证系统在故障发生时能够快速恢复。

二、多选题1. 中间件的主要特点包括()。

(A)A. 位于操作系统和应用程序之间B. 只负责数据传输C. 不提供安全和可靠性保障D. 只能处理同步通信2. 消息队列中间件的作用包括()。

(A、B、C、D)A. 实现异步通信B. 平衡系统负载C. 提高系统可扩展性D. 支持事务处理三、应用题1. 请设计一个使用消息队列中间件实现异步任务处理的系统架构,并描述其工作原理。

答:系统架构如下:[发送方] -> [消息队列中间件] -> [接收方]工作原理:1)发送方将任务消息发送到消息队列中;2)接收方从消息队列中获取任务消息并进行处理;3)接收方将处理结果写入队列中,发送给发送方。

中间件期末考试题

中间件期末考试题

中间件期末考试题一.挑选1.开放系统互操作面临的异构型不包括:(D)A.不同的数据库系统B.不同的开发工具C.不同的操作系统D.不同的软件开发企业2.以下哪个模块不属于X OPen DTP模型的基本组成部分(C)A.应用程序(AP)B.资源管理器(RM)C.命名服务器(NS)D.事务管理器(TM)3.下列属于消息拜访中间件的是(C)A.SOAP (Web Service 中使用的通信服务协议)B.ORB(对象中间件)C.JMS(Java消息服务)D.ODBC(数据库拜访中间件)4.Web Service 中使用的通信服务协议是(B)A.GIOP(通用ORB互通协议)B.SOAPC.WSDL(服务说明语言)D.IIOP(互联网ORB互通协议)5.在window平台中,COM进程内组建的文件格式普通是(D)B.exe(外) D.dll(内)6.ORB通过使用(B )在网络环境中找到分布式对象A.IP地址B.IORC.对象名称D.GUID7.windows平台下,COM组件发布时普通把组建相关信息写到(B)A.环境变量B.注册表C.同一个文件夹的配置文件D.命名服务器8.分布式事务的特征不包括(C)A.隔离性B.原子性C.传递性D.持久性9.CORBA平台普通使用(D)描述分布式对象的对外服务接口A.WSDLB.HTMLC.IORD.IDL10.在分布式对象拜访的桩/框架结构中,负责替分布式对象完成底层通信相关工作的是(D)A.客户端桩B.构建的接口C.分布式对象自身D.服务器端框架(Skeleton)11.下列那种对象不支持分布式对象的实现(C)A.EJBB.CORBAC.JDBCD.DCOM12.全部COM组件必需要实现的接口是(A)A.IUnknownB.IDispatchC.ClassFactoryomCoClass13.J2EE中,(D)接口用于网络中定位组件和其他资源A.JMSB.JDBCC.JTAD.JNDI14.OMA组织定义ORB之间的互通协议为(A )A.GIOP/IIOPB.HTTPC.TCPD.IP15.下列属于数据库拜访中间件的是(C)A.ORBB.DCOMC.ODBCD.RPC16.在举行RMI编程时,供客户端调用的业务办法必需抛出(A )异样A.RemoteExceptionB.IOExceptionC.SQLExceptionD.ClassCastException二.名词解释1.接口定义语言IDL界面描述语言,IDL是一种描述性语言,属于远程过程调用RPC 技术方面,IDL对接口和组件举行描述,指定接口或组件的属性信息用来生成所需要的代理/存根代码、调度代码或者类型库。

武汉理工中间件复习题

武汉理工中间件复习题

武汉理工中间件复习题软件11 级中间件复习题参考答案二、问答题a) 什么是RMI ?与RMI/IIOP 的差别是什么?RMI, Remote Method Invocztion, 即远程方法调用。

和RMI/IIOP 相同的地方是两种方法都使用 JAVA创建远程对象的接口,而两者使用的网络协议有所不同。

后者使用CORBA 规范的通用协议IIOP,所以可以和CORBA 应用通讯。

换句话说,一个CORBA 客户端可以访问一个RMI/IIOP 服务器。

b) 什么是CORBA?与RMI/IIOP 的差别是什么?CORBA, Common Object Request Brocker Achitecture 。

即通用对象请求代理体系框架,是一种分布式中间件规范。

和RMI/IIOP 不同的地方,前者使用IDL 通用接口定义语言定义远程对象的接口,而后者是纯粹的JAVA 分布式体系,使用JAVA 定义远程接口。

c) CORBA 体系结构的中间件是什么?CORBA 体系结构的中间件是ORB,即对象请求代理d) 客户端的码根和服务器端的框架作用是什么?客户端的码根和服务器端的框架作用是什么?客户端的码根是远程对象的本地镜像,也就是远程对象的本地代理,主要负责远程方法参数打包和远程方法调用返回结果的解包。

服务器端的框架是服务器的码根。

e) 试列举常用的中间件类型。

1、远程过程调用中间件,即RPC 。

2 、面向对象中间件,例如:RMI. RMI/IIOP, CORBA, EJB, DCOM 等。

3、面向消息中间件,例如:Java Message Service, IBM MQSeries, Web Services 等。

4 、基于事件中间件。

f) 基于RMI/IIOP 的分布式应用开发步骤及请注意事项是什么?1、用JAVA 定义远程接口。

注意,远程接口要继承java.rmi.Remote,远程方法要抛出java.rmi.RemoteException 。

中间件复习题及答案.doc

中间件复习题及答案.doc

中间件复习题1.你认为什么是中间件?中间件的主要作用是什么?●定义:中间件是介于应用系统和系统软件之间的一类软件,是位于操作系统和应用软件之间的一个软件层,向各种应用软件提供服务,使不同的应用进程能在屏蔽掉平台差异的情况下,通过网络互通信息。

●作用:使用系统软件所提供的基础服务(功能),衔接网络上应用系统的各个部分或不同的应用,能够达到资源共享、功能共享的目的。

2.比较B/S结构与C/S结构的优缺点。

C/s 是客户机和服务器结构B/S是浏览器和服务器结构B/S:优点:1.具有分布性特点,业务处理方便;2.业务扩展简单方便;3.便于维护缺点:1.响应速度不及C/S结构;2.用户体验效果不够理想,需要单独界面设计C/S:优点:1.客户端与服务器直接相连,响应速度快;2.C/S结构的管理信息系统具有较强的事务处理能力。

缺点:1.客户端需要安装专用的客户端软件,工作量、维护成本较大;2.对客户端的操作系统有限制。

3.对客户端的操作系统一般也会有限制。

不适用于微软新的操作系统等等,Linux、Unix等。

3.ORB、对象适配器的作用分别是什么?●ORB:是OMA参考模型的核心,是基于分布式对象构建应用程序的基础设施,保证了在异构平台上对象的互操作性与可移植性。

作用:把客户发出的请求传递给目标对象,并把目标对象的执行结果返回给发出请求的客户。

由ORB提供的通信机制负责完成查找请求的对象实现,让对象实现准备好接收请求,传递构成请求的数据。

●对象适配器:对象适配器是联系对象实现与ORB本身的纽带。

它的引入还大大减轻了ORB的任务,从而简化了ORB的设计。

作用:管理服务器端伺服对象,对象标识,CORBA对象以及它们之间关联。

决定在收到一个客户请求时应调用哪一个伺服对象,然后调用该伺服对象上的合适操作。

对象适配器主要完成以下工作:对象登记、对象引用(OR, Object Reference)的产生、服务器进程的激活、对象的激活、对象的撤消、对象向上调用。

中间件技术原理与应用课后习题(1-8章参考答案)

中间件技术原理与应用课后习题(1-8章参考答案)

中间件技术原理与应用课后习题(1-8章参考答案)-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII中间件技术原理与应用课后习题参考答案S1.中间件产生背景及分布式计算环境1.比较开放系统与分布式系统的异同。

分布式系统具备以下属性:远程性、并发性、异步性、异质性、自主性、联合性、伸缩性、发展性、移动性。

开放系统具备以下属性:开放的、集成的、灵活的、模块化的、可联合的、可管理的、满足服务质量需要、安全的、提供透明性。

2.简述开放系统的特性:开放系统具有可移植性、可互操作性、可伸缩性、易获得性。

3.什么是互操作性,有哪几种层次的互操作性?在一个由异质实体构成的网络环境中,当应用在网络的结点上运行时,它可以透明地动用网中其他结点上的资源,并借助这些资源与本结点上的资源共同来完成某个或某组人物,这种能力被称为互操作性。

有以下层次:Application-Collaboration-ApplicationTransparency-Inter-operability- TransparencyRPC-Inter-communication- RPCComms-Inter-Connection- Comms4.简述中间件产生的背景、概念、组成结构及核心技术。

定义:中间件是介于应用系统和系统软件之间的一类软件,它能使处于应用层中的各应用成分之间实现跨网络的协同工作。

组成结构:(1)执行环境软件(2)应用开发工具核心技术:通信、资源管理、互操作性5 .简述DCE的组成结构及其缺点。

DCE由分布式文件服务、安全服务、目录服务、时间服务、RPC、线程组成。

DEC的缺点:RPC设计不周,开发工具薄弱;性能差、适用系统少、适用困难;没有采用面向对象技术。

S2.面向对象中间件ODP6.阐述面向对象的定义及其与面向过程的调用的区别。

面向对象的方法以一种更为直观的方法分析和构造系统,它将整个系统抽象并模型化,让人们能够更好地了解整个系统,使得在设计时就能发现其中可能存在的问题。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1、试描述分布式系统的三层结构,并简要分析三层结构相比两层结构的特点和优势。

所谓三层体系结构,是在客户端与数据库之间加入了一个“中间层”,也叫组件层。

三层体系的应用,程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理.通常情况下,客户端不一直接与数据库进行交互,而是通过中间层与数据库进行交互。

特点优势:
1、由于数据访问时通过中间层进行的,因此客户端不在于数据库直接建立连接,也就是说,建立在数据库服务器上的连接数量将大大减少
2、可维护性得以提高。

因为业务规则、合法性校验存在于中间层,因此当业务规则发生改变时,只需要更改中间层服务器上的某个组件,而客户端应用程序不需要做任何处理。

3、良好的可重用性。

如果需要开发B/S应用,则不必要重新进行数据访问、业务规则等的开发,可以直接在WEB服务器端调用现有的中间层。

4、事务处理更加灵活,可以在数据库端、组件层、MTS管理器中进行事务处理。

2、在EJB中,开发人员可以开发的会话构件(Session Bean)分为无状态会话构件(Stateless Session Bean)和有状态会话构件(Stateful Session Bean)。

1)说明无状态会话构件与有状态会话构件的主要区别
有状态bean
表示客户与系统交互的短暂对象,操作完成后被删除
可以在不同的方法调用间保持针对各个客户端的状态,维护会话状态。

与客户端的联系必需被维持;通常开销较大。

有状态会话Bean会保存客户端的状态。

无状态bean
不在客户请求之间维护状态信息
所有无状态会话Bean的实例都是相同的(无状态会话Bean能支持多个客户端
在不同方法调用间不保留任何状态。

事务处理必须在一个方法中结束。

通常资源占用较少;可以被共享(因为它是无状态的)。

无状态Bean不会〃专门〃保存客户端的状态
创建一个存储过程名称:prostudentcity,参数:@city,功能:根据给出的城市的不同,显示不同的信息
创建存储过程progetnamebyid,参数:@stuid,功能:显示学生的姓名
在student数据库中,创建一个名称为
myproc的存储过程,该存储过程的功能是从
数据表studentjnfo中衍旬所有男同学的信
息。

USE student
GO
CREATE PROCEDURE myproc AS
SELECT * FROM studentjnfo WHERE sex ='
男'
GO
・2、创建带有参数的存储过程
例:在student数据库中,创建一个名称为InsertRecord的存储过程,该存储过程的功能是向数据表studjnfo中插入一条记录,新记录的值由参数提供。

USE student
GO
CREATE PROCEDURE InsertRecord
(
@sno char(6),
@sn char(20),
@age numeric(5),
@sex char(2),
@dept char(10)
)
AS
INSERT INTO studjnfo
VALUES(@sno,@sn,@sex,@age,@dept) GO
•3、创建具有参数默认值的存储过程
例:在student数据库中,创建一个名称为InsertRecordDef的存储过程,该存储过程的功能是向数据表student中插入一条记录,新记录的值由参数提供,如果未提供系别dept 的值时,由参数的默认值代替。

USE student
GO
CREATE PROCEDURE InsertRecordDef
(
@sno char(6),
@sn char(20),
@age numeric(5),
@sex char(2),
@dept char(10)=无
)
AS
INSERT INTO studjnfo
VALUES(@sno,@sn, @sex , @age, @dept) GO
EJB组件有哪几种?其特点分别是什么?EJB组件:会话bean (维护会话):表
示客户同应用之间进行的会话,是一种商业处理过程对
象。

实体bean(处理事务):代表商业过程中处理的永久性的数据。

消息驱动Beans (Message-driven Beans):结合了会话bean 和
JMS的消息监听器的特性,可异步接收JMS消息。

特点:会话bean (维护会话): -运
行在服务器端,其数据需要自己管理-客户
通过session bean上的方法来同应用的业务逻辑层上的组件进行交互-Session bean是短暂的,且只有在与之关联的会话存在时才存在・
会话Bean代表的是调用它的客户程序所完成的工作,是商务过程对象。

-他们执行商务逻辑、商务规则、算法和工作流程,他们是包含商
务逻辑过程的可重用组件。

中间件复习题
9 实体bean:■表示存储在永久性数据存储位置的业务数据,是持久的对象。

■与会话bean不同,实体bean不维护客户端状态-实体bean实例映射到存储在关系数据库表中的一行数据•实体bean每一个实例都具有唯一的标识(主键)■更复杂的entity bean可以代表数据库表间关联视图。

■实体bean对象的存活时间与它们相关联的数据实体-样长,持续到它们表示的实体实际从永久性存储器中删除时对象■与会话bean不同,实体可由多个客户共享消息bean:与其他BEAN区别 -不能由客户直接调用,由容器异步调用•没有远程或本地接口■类似于无状态的会话BEAN
2层和3层系统的特点是什么?2层结构存在很多缺陷:1 .客户端的负担仍比较重:
仍然需要客广端进行较复杂的数据处理2.客户端的可移植性不好:处理复杂必然牵涉更多的移植性问题;每个客户端上都要安装数据库驱动程序中间件复习题
12 3.系统的可维护性不好:客户端包含过多的商业逻辑;商业逻辑与人机交互界面交织在一•起4.数据的安全性3层结构的优点:除了更合理的分配任务外,3层结构还具有如下优点:1 .将业务逻辑放置在中间层可以提高系统的性能,使中间层的业务逻辑处理与数据层的业务数据紧密结合在一起,而无需考虑客户的具体位置。

2.添加新的中间层服务器能够满足新增客户机的需求,可以大大提高3层系统的可伸缩性。

3.将业务逻辑从客户端移到中间层,在客户层的应用程序与数据层的数据库之间增加了-•层,这样客户端的应用程序可以独立于数据层的数据库。

4.将业务逻辑致于中间层,从而使业务逻辑集中到一处。

而在2层方式下,业务逻辑被分散到所有的客户机上(除非使用存储过程)o这样做是不可取的,因为业务规则是动态变化的,而对于这些业务而言,规范乂是强制性的,所以, 将业务逻辑分散到整个客户层的客户机上会使实施过程变得非常困难。

5 .大量的中间层中间件平台提供丰富的系统级服务,使得开发人员可以以更少的匚作量开发出更复杂、可靠、高效的软件系统。

RPC调用的缺点
-(1)客户端与服务器端需要同时在线;
-(2)客户端需要知道服务器端的调用接口,若调用接口发生改变,客户端需要做相应变化,如通过ODBC连接访问数据库,客户端需要知道远程数据摩的类型,若类型发生改变,还需要重新装载相应的驭动程序。

■ (3)操作过程中需要一直保持与服务器端的连接,直到操作结束。

因而,
' 〈a)—旦连接中断,就意味着操作失败或数据丢失;
~ (成通常判断连接中断的时间较长,若信道的可靠性较差,容易造成连接中断,那么应用效率将严重低下;
~ (C)服务器端在执行操作的过程中,并不涉及网上数据传输,但连接的保持占用信道,容易造成网络堵塞。

相关文档
最新文档