全部科目 > 系统分析师 >
2023年上半年 上午试卷 综合知识
第 30 题
知识点 SOA概述   SOA   查找   系统架构   消息   注册  
关键词 SOA   传输   技术规范   系统架构   消息   OA  
章/节 软件工程  
 
 
SOA 是一种全新的系统架构,为了支持其特性,相关技术规范不推出。( )定义了服务请求者和服务提供者之前的消息传输规范;( )提供了一种服务发布、查找和定位的方法,是服务的信息注册规范,以便被需要该服务的用户发现和使用它。
 
  A.  WSDL
 
  B.  REST
 
  C.  SOAP
 
  D.  SCA




 
 
相关试题     软件工程 

  第75题    2023年上半年  
Safety cntical systos are syste me in which failures may affect the environment of the esem ard cwse injury or desth to the people in that environment..

  第27题    2014年上半年  
某公司要开发一个软件产品,产品的某些需求是明确的,而某些需求则需要进一步细化。由于市场竞争的压力,产品需要尽快上市。则开发该软件产品最不适合采用(27)..

  第23题    2024年上半年  
以下关于需求获取方法的叙述中,(32)是正确的。

 
知识点讲解
· SOA概述
· SOA
· 查找
· 系统架构
· 消息
· 注册
 
        SOA概述
        SOA并不仅是一种现成的技术,而且是一种体系结构和组织IT基础结构及业务功能的方法,是一种在计算环境中设计、开发、部署和管理离散逻辑单元(服务)模型的方法。下图描述了一个完整的面向服务的体系结构模型。
        
        面向服务的体系结构
        在SOA体系结构模型中,首先,所有的功能都定义成了独立的服务。服务之间通过交互、协调作业从而完成业务的整体逻辑。所有的服务通过服务总线(services bus)或流程管理器来连接服务和提高服务请求的路径。这种松散耦合的体系结构使得各服务在交互过程中无须考虑双方的内部实现细节,以及部署在什么平台上。应用程序的松散耦合还提供了一定级别的灵活性和互操作性,使用传统的方法构建高度集成的、跨平台的程序,对程序的通信环境所能提供的灵活性和互操作性无法与之相比。
        下面从微观的角度,看看独立的单个服务内部的结构模型。一个独立的服务基本结构模型如下图所示。
        
        单个服务内部结构
        由上图可以看出,与构件模型的区别在于,服务模型的表示层从逻辑层分离出来,中间增加了服务对外的接口层。服务接口的意义在功能上表现为:更多、更灵活的功能可以在服务接口中实现。
        此外,更加突出的变革性突破在于,通过服务接口的标准化描述,使得该服务可以提供给在任何异构平台和任何用户接口中使用,允许并支持基于Web服务的应用程序成为松散耦合、面向构件和跨技术实现。调用程序很可能根本不知道该服务在哪里运行、是由哪种语言编写以及消息的传输路径。只需要提出服务请求,然后就会得到答案。同时,由于服务模型中的业务逻辑构件之上增加了一层可以被大部分系统都认可的协议,从而使得系统的集成不再是一个问题。
        SOA是一种粗粒度、松耦合的服务体系结构,其服务之间通过简单、精确定义接口进行通信,不涉及底层编程接口和通信模型。这种模型具有下面3个特征:
        (1)松散耦合。SOA是松散耦合构件服务,这一点区别于大多数其他的构件体系结构。松散耦合在将服务使用者和服务提供者在服务实现和客户如何使用服务方面隔离开来。服务提供者和服务使用者间松散耦合背后的关键点是服务接口作为与服务实现分离的实体而存在。这是服务实现能够在完全不影响服务使用者的情况下进行修改。大多数松散耦合方法都依靠基于服务接口的消息,基于消息的接口能够兼容多种传输方式,可以采用同步或异步协议实现。
        (2)粗粒度服务。服务粒度(Service Granularity)指的是服务所公开功能的范围,一般分为细粒度和粗粒度,其中,细粒度服务是那些能够提供少量商业流程可用性的服务。粗粒度服务是那些能够提供高层商业逻辑的可用性服务。选择正确的抽象级别是SOA建模的一个关键问题。设计中应该在不损失或损坏相关性、一致性和完整性的情况下,尽可能地进行粗粒度建模。通过一组有效设计和组合的粗粒度服务,业务专家能够有效地组合出新的业务流程和应用程序。
        (3)标准化接口。SOA通过服务接口的标准化描述,从而使得该服务可以提供给在任何异构平台和任何用户接口中使用。这一描述囊括了与服务交互需要的全部细节,包括消息格式、传输协议和位置。该接口隐藏了实现服务的细节,允许独立于实现服务基于的硬件或软件平台和编写服务所用的编程语言使用服务。
 
        SOA
        SOA(Service-Oriented Architecture,面向服务的架构)是一种粗粒度、松耦合服务架构,服务之间通过简单、精确定义接口进行通信,不涉及底层编程接口和通信模型。SOA可以看作是B/S模型、XML(标准通用标记语言的子集)/Web Service技术之后的自然延伸。
        Web Service是现在实现SOA的主要技术,是一个平台独立的,低耦合的,自包含的、基于可编程的web应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。Web Service技术,能使得运行在不同机器上的不同应用无须借助附加的、专门的第三方软件或硬件,就可相互交换数据或集成。依据Web Service规范实施的应用之间,无论它们所使用的语言、平台或内部协议是什么,都可以相互交换数据。
        SOA支持将业务转换为一组相互链接的服务或可重复业务任务,可以对这些服务进行重新组合,以完成特定的业务任务,从而使业务能够快速适应不断变化的客观条件和需求。
 
        查找
        1)顺序查找
        顺序查找又称线性查找,顺序查找的过程是从线性表的一端开始,依次逐个与表中元素的关键字值进行比较,如果找到其关键字与给定值相等的元素,则查找成功;若表中所有元素的关键字与给定值比较都不成功,则查找失败。
        2)折半查找
        折半查找的过程是先将给定值与有序线性表中间位置上元素的关键字进行比较,若两者相等,则查找成功;若给定值小于该元素的关键字,那么选取中间位置元素关键字值小的那部分元素作为新的查找范围,然后继续进行折半查找;如果给定值大于该元素的关键字,那么选取比中间位置元素关键字值大的那部分元素作为新的查找范围,然后继续进行折半查找,直到找到关键字与给定值相等的元素或查找范围中的元素数量为零时结束。
        3)分块查找
        在分块查找过程中,首先将表分成若干块,每一块中关键字不一定有序,但块之间是有序的。此外,还建立了一个索引表,索引表按关键字有序。分块查找过程需分两步进行:先确定待查记录所在的块;然后在块中顺序查找。
        4)哈希表及其查找
        根据设定的哈希函数H(key)和处理冲突的方法,将一组关键字映射到一个有限的连续地址集上,并以关键字在地址集中的像作为记录在表中的存储位置,这种表称为哈希表,也称散列表。这一过程所得到的存储位置称为散列地址,由此形成的查找方法称为散列查找。
 
        系统架构
               客户机/服务器系统
               C/S(Client/Server)结构,即大家熟知的客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到客户机端和服务器端来实现,降低了系统的通信开销。目前大多数应用软件系统都是客户机/服务器形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和客户机/服务器应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。
               浏览器/服务器系统
               B/S (Browser/Server)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(浏览器)实现,但是主要事务逻辑在服务器端(服务器)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握,成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(如LAN,WAN, Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。
               多层分布式系统(Multi-tier System)
               (1)概念。
               随着中间件与Web技术的发展,三层或多层分布式应用体系越来越流行。在多层体系中,各层次按照以下方式进行划分,实现明确分工:
               ①瘦客户:提供简洁的人机交互界面,完成数据的输入/输出。
               ②业务服务:完成业务逻辑,实现客户与数据库对话的桥梁。同时,在这一层中,还应实现分布式管理、负载均衡、Fail/Recover、安全隔离等。
               ③数据服务:提供数据的存储服务。一般就是数据库系统。
               (2)多层系统主要特点。
               多层系统主要特点是:
               .安全性。中间层隔离了客户直接对数据服务器的访问,保护了数据库的安全。
               .稳定性。对于要求24×7工作的业务系统,多层分布式体系提供了更可靠的稳定性。一是中间层缓冲Client与数据库的实际连接,使数据库的实际连接数量远小于Client应用数量。当然,连接数越少,数据库系统就越稳定。二是Fail/Recover机制能够在一台服务器宕机的情况下,透明地把客户端工作转移到其他具有同样业务功能的服务上。
               .易维护。由于业务逻辑在中间服务器,当业务规则变化后,客户端程序基本不做改动。
               .快速响应。通过负载均衡以及中间层缓存数据能力,可以提高对客户端的响应速度。
               .系统扩展灵活。基于多层分布体系,当业务增大时,可以在中间层部署更多的应用服务器,提高对客户端的响应,而所有变化对客户端透明。
               (3)多层系统举例。
               目前最为流行的两类多层应用架构为Sun的J2EE和Microsoft.Net,下面简单介绍J2EE的多层架构。
               
               J2EE多层应用架构
               (4)客户层。
               客户层用于与企业信息系统的用户进行交互以及显示根据特定商务规则进行计算后的结果。基于J2EE规范的客户端可以是基于Web的,也可以是不基于Web的独立(Stand Alone)应用程序。
               在基于Web的J2EE客户端应用中,用户在客户端启动浏览器后,从Web服务器中下载Web层中的静态HTML页面或由JSP或Servlets动态生成的HTML页面。
               在不基于Web的J2EE客户端应用中,独立的客户端应用程序可以运行在一些基于网络的系统中,例如手持设备或汽车电话等。同样,这些独立的应用也可以运行在客户端的Java Applet中。这种类型的客户端应用程序可以在不经过Web层的情况下直接访问部署在EJB容器(EJB Container)中的EJB组件。
               (5) Web层。
               J2EE规范定义的Web层由JSP页面、基于Web的Java Applets以及用于动态生成HTML页面的Servlets构成。这些基本元素在组装过程中通过打包来创建Web组件。运行在Web层中的Web组件依赖Web容器来支持诸如响应客户请求以及查询EJB组件等功能。
               (6)业务层。
               在基于J2EE规范构建的企业信息系统中,将解决或满足特定业务领域商务规则的代码构建成为业务层中的Enterprise JavaBean (EJB)组件。EJB组件可以完成从客户端应用程序中接收数据、按照商务规则对数据进行处理、将处理结果发送到企业信息系统层进行存储、从存储系统中检索数据以及将数据发送回客户端等功能。
               部署和运行在业务层中的EJB组件依赖于EJB容器来管理诸如事务、生命期、状态转换、多线程及资源存储等。这样由业务层和Web层构成了多层分布式应用体系中的中间层。
               (7)企业信息系统层。
               在企业应用系统的逻辑层划分中,企业信息系统层通常包括企业资源规划(ERP)系统、大型机事务处理(Mainframe Transaction Processing)系统、关系数据库系统(RDMS)及其他在构建J2EE分布式应用系统时已有的企业信息管理软件。
 
        消息
        消息是对象间通信的手段、一个对象通过向另一个对象发送消息来请求其服务。一个消息通常包括接收对象名、调用的操作名和适当的参数(如有必要)。消息只告诉接收对象需要完成什么操作,并不能指示接收者怎样完成操作。消息完全由接收者解释,接收者独立决定采用什么方法来完成所需的操作。
 
        注册
        移动IP通信的第二个阶段是注册。当移动主机已经移动到外地网络并且已经发现了外地代理后,就必须注册。关于注册涉及以下3点:
        (1)移动主机必须向外地代理注册。
        (2)如果截止期到了,移动主机必须重新注册。
        (3)如果移动主机离开某个外地网络,则必须注销。
        具体步骤是:移动主机把注册请求发送给外地代理,并把归属地址和归属地代理地址发送给外地代理。外地代理收到这些信息后,把这些信息转发给移动主机的归属地代理以认证上述信息,如果认证通过,那么移动主机就在外地代理这里注册成功。同时,移动主机的归属地代理也知道了外地代理的地址(转交地址)。



更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2025 All Rights Reserved
软考在线版权所有