SOA 与演化
⚠️ 资料来源于互联网整理,仅作备考参考,正式结论请以官方教程与考纲为准。发现错误欢迎反馈问题。
🔒 本篇为会员内容。开通会员 →(全站会员内容畅读 · 附件下载 · 专享答疑)
学科 系统架构设计 | 章节
§6| 考点类型 — | 重要度 — | 知识点ID—学科:系统架构设计 | 大纲域:
§6| 考频:每年 2-4 题 题目与解析来自raw/kb26-题库练习/(二级来源);每题已绑定知识点 ID,可在对应知识点页对照复习。
1. 下列关于面向服务架构(SOA)核心思想的描述,错误的是:
题型:单选 | 难度:中 | 知识点:
SA-02基于架构的软件开发方法ABSD
- A. 以”服务”为基本构建单元,服务是可独立部署、可远程调用的业务能力单元
- B. 服务之间通过标准化契约通信,强调松耦合
- C. SOA 倾向于粗粒度服务,一个服务对应一个相对完整的业务能力
- D. 服务必须设计得尽可能细粒度,粒度越小系统越优 ✅
答案:D
解析(采分点):SOA 倾向粗粒度(企业级业务服务),”粒度越小越好”是常见误区——过细会带来网络开销、分布式一致性和运维复杂度暴增。粒度评估要看业务能力闭环度、复用度、自治度,而非一味求小。
2. 下列不属于 SOA 设计原则的是:
题型:单选 | 难度:难 | 知识点:
SA-02基于架构的软件开发方法ABSD
- A. 服务松耦合(消费者只依赖契约,不感知提供者实现)
- B. 服务契约标准化(契约先行,描述操作、消息、绑定、端点)
- C. 服务自治(服务独立开发、部署、运行、演进,自管资源)
- D. 服务紧耦合并共享内部实现以提升调用性能 ✅
答案:D
解析(采分点):SOA 八大设计原则为:松耦合、标准化契约、抽象、可复用、自治、无状态、可发现、可组合。”紧耦合、共享内部实现”与松耦合、服务抽象原则直接冲突,是反模式。
3. 关于 SOA 设计原则”服务无状态”,下列理解正确的是:
题型:单选 | 难度:易 | 知识点:
SA-03数据流风格与调用返回风格
- A. 服务不能访问任何数据库
- B. 服务一旦部署就不能再修改
- C. 每次调用应是自包含的,会话状态尽量下沉到数据库/缓存,便于弹性扩缩与故障恢复 ✅
- D. 服务不能被其他服务组合调用
答案:C
解析(采分点):服务无状态指服务实例本身不长期保存与特定客户端相关的会话状态,状态外置(DB/缓存/令牌),这样任一实例可处理任一请求,利于负载均衡、横向扩展和故障转移;并非禁止访问持久化存储。
4. Web Service 三要素(经典 SOA 实现的三件套)是:
题型:单选 | 难度:中 | 知识点:
SA-02基于架构的软件开发方法ABSD
- A. HTTP / JSON / REST
- B. SOAP / WSDL / UDDI ✅
- C. XML / XSLT / XSD
- D. gRPC / Protobuf / etcd
答案:B
解析(采分点):SOAP 是基于 XML 的消息协议(含 Envelope/Header/Body)负责传输;WSDL 是服务契约描述语言;UDDI 是服务注册与发现目录。三者构成 Web Service 体系:传输 + 描述 + 注册发现。
5. WSDL 在 SOA 中的主要作用是:
题型:单选 | 难度:中 | 知识点:
SA-03数据流风格与调用返回风格
- A. 以与平台无关的方式描述服务契约(操作、消息、数据类型、绑定、端点),实现跨语言互操作 ✅
- B. 对 SOAP 消息进行加密和签名
- C. 把服务注册到目录供消费者查找
- D. 编排多个服务组成业务流程
答案:A
解析(采分点):WSDL(Web Services Description Language)是契约描述。加密签名属于 WS-Security;服务注册发现是 UDDI;业务流程编排是 BPEL。WSDL 让消费者无需了解实现语言即可生成客户端调用。