【软考系统架构设计师】复盘架构设计师真题知识点第十七章—面向服务
复盘架构设计师真题知识点第十七章---面向服务
前言部分 考点分析历年真题
面向服务的开发方法建立在面向对象之上,目前也有日渐成熟之势。面向服务相关的知识点也频繁出现在架构师以及分析师的考试当中。它主要的考点有:微服务的概念特征,面临问题,挑战;SOA概念,特征,主要技术及标准,结合案例运用;REST的概念,特征,优缺点;企业服务总线ESB的概念,主要功能,综合运用等。
01.综合知识考点分析
在综合知识中面向服务基本上不怎么考到,最近几年才有1分左右关系的题出现;在这里不用特别关注。
02.案例分析考点分析
在案例分析中面向服务考查了四年,早些年主要考查的是ESB企业服务架构及相关运用,2018年面向服务的考查方式更加综合,不光有概念,还有看图填空,给一段话找出可以封装的服务等等。而微服务作为案例已经出现在系统分析师考试中过了,在架构师的案例中还没有出现过。
03.论文写作考点分析
论文考面向服务的架构也考过四次,考过REST,SOA服务类别,SOA技术标准,也考过微服务(作为新技术)。从考查频度看不低了。但自己没有面向服务架构的经验,反而变成了硬伤。
还有面向服务和构件技术,系统集成技术都有千丝万缕的联系。可以和这些一起准备。
第一部分 综合知识历年真题
2016下综合知识历年真题(3分)
【2016下架构真题第27题:黄色】
27.面向服务系统构建过程中,( )用于实现Web服务的远程调用,( )用来将分散的、功能单一的Web服务组织成一个复杂的有机应用。
A.UDDI(Universal Description,Discovery and Integration)
B.WSDL(Web Service Description Language)
C.SOAP(Simple Object Access Protocol)
D.BPEL(Business Process Execution Language)
解答:答案选择C|D。 二周目第二空错了红色变黄色。
【2016下架构真题第28题:红色】
28.基于JavaEE平台的基础功能服务构建应用系统时,( )可用来集成遗产系统。
A.JDBC、JCA和 Java IDL
B.JDBC、 JCA和 JMS
C.JDBC、JMS和 Java IDL
D.JCA、JMS和Java IDL
解答:答案选择A。
- 在构建应用系统时,需要与不同时期采用不同技术开发的既有系统进行集成。
- JavaEE(J2EE)平台提供了对于不同类型遗产系统的集成支持。
- 对于关系型数据库系统可以采用JDBC(Java数据库连接)进行连接,对于非Java应用系统可以采用JCA(Java连接器架构)连接,对于基于COFJBA的应用系统可以采用Java IDL(Java接口定义语言)实现集成。
2019下综合知识历年真题(2分)
【2019下架构真题第29题:绿色】
29.( )是由中间件技术实现并支持 SOA 的一组基础架构,它提供了一种基础设施,其优势在于( ) 。
A.ESB
B.微服务
C.云计算
D.Multi-Agent System
》
A.支持了服务请求者与服务提供者之间的直接联系
B. 支持了服务请求者与服务提供者之间的紧密耦合
C. 消除了服务请求者与服务提供者之间的直接链接
D. 消除了服务请求者与服务提供者之间的关系
解答:答案选择A|C。
- 微服务是SOA技术的一种变体,云计算是网络云服务的一种技术,Multi-Agent System多智能系统是人工智能技术的一种应用。本题第一空选择A选项。
- 企业服务总线(Enterprise Service Bus, EBS)技术,其思想是提供一种标准的软件底层架构,各种程序组件能够以服务单元的方式“插入”到该平台上运行,并且组件之间能够以标准的消息通信方式来进行交互。
- ESB的定义通常如下:企业服务总线是由中间件技术实现的支持面向服务架构的基础软件平台,支持异构环境中的服务以基于消息和事件驱动模式的交互,并且具有适当的服务质量和可管理性。
- 这种交互过程不再是点对点的直接交互模式,而是由事件驱动的消息交互模式。通过这种方式,ESB最大限度上解耦了组件之间的依赖关系,降低了软件系统互连的复杂性。ESB不支持服务请求者与服务提供者直接的直接链接,二者之间仍然存在关系,只是这种关系是松耦合的。本题第二空选择C选项,其他选项的说法都是错误的
第二部分 案例分析历年真题
2010下案例分析历年真题(20分)
2010年系统架构师案例分析真题第四题(服务架构集成)
TeleDev是一个大型的电信软件开发公司,公司内部采用多种商业/开源的工具进行软件系统设计与开发工作。为了提高系统开发效率,公司管理层决定开发一个分布式的系统设计与开发工具集成框架,将现有的系统设计与开发工具有效集成在一起。集成框架开发小组经过广泛调研,得到了如下核心需求。
(1) 目前使用的系统设计与开发工具的运行平台和开发语言差异较大,集成框架应无缝集成各个工具的功能;
(2) 目前使用的系统设计与开发工具所支持的通信协议和数据格式各不相同,集成框架应实现工具之间的灵活通信和数据格式转换
(3) 集成框架需要根据实际的开发流程灵活、动态地定义系统工具之间的协作关系:
(4) 集成框架应能集成一些常用的第三方实用工具,如即时通信、邮件系统等。
集成框架开发小组经过分析与讨论,最终决定采用企业服务总线(ESB)作为集成框架的基础架构。
【问题1】
ESB是目前企业级应用集成常用的基础架构。请列举出ESB的4个主要功能,并从集成系统的部署方式、待集成系统之间的耦合程度、集成系统的可扩展性三个方面说明为何采用ESB作为集成框架的基础架构。
【问题2】
在ESB基础架构的基础上,请根据题干描述中的4个需求,说明每个需求应该采用何种具体的集成方式或架构风格最为合适。
【问题3】
请指出在实现工具之间数据格式的灵活转换时,通常采用的设计模式是什么,并对实现过程进行简要描述。
- 【问题1标准答案】
ESB 的主要功能包括:
- 应用程序的位置透明性
- 传输协议转换
- 消息格式转换
- 消息路由
- 消息增强
- 安全支持
- 监控和管理
-
采用ESB作为集成框架,能够实现灵活的部署结构,包括CS结构、P2P结构等。
-
采用ESB作为集成框架,待集成系统只需要和总线进行联系,彼此之间不需要互相通信,这样就大大降低了系统的耦合程度。
-
采用ESB作为集成框架,在加入新的待集成系统时,只需要采用插件的方式实现传输协议和数据格式的适配即可,系统的可扩展性较强。
-
【问题2标准答案】
- 对于需求1来说,由于需要共享系统的功能,并且系统的运行平台与语言差异较大,应该采用面向服务的方式进行功能集成,可以将工具的功能包装为服务,实现跨语言与跨平台访问
- 对于需求2来说,工具所支持的通信协议和数据格式各不相同,并需要实现工具之间的灵活通信协议和数据格式交换,因此应该基于消息总线,以协议及数据适配器的方式实现灵活的通信协议和数据格式转换。
- 对于需求3.来说,集成框架需要根据实际的软件系统开发流程,灵活、动态地定义系统设计与开发工具之间的协作关系,因此应该引入工作流定义语言及其引擎来动态描述工具之间的协作关系。
- 对于需求4来说,应该采用界面集成的方法对第三方工具进行集成,绕过工具内部的复杂处理逻辑
2011下案例分析历年真题(25分)
2011年系统架构师案例分析真题第四题