《系统架构设计师教程(第2版)》第15章-面向服务架构设计理论与实践-04-SOA设计

文章目录

  • [1. SOA设计的标准要求](#1. SOA设计的标准要求)
    • [1.1 文档标准](#1.1 文档标准)
    • [1.2 通信协议标准](#1.2 通信协议标准)
    • [1.3 应用程序统一登记与集成](#1.3 应用程序统一登记与集成)
    • [1.4 服务质量 (QoS)](#1.4 服务质量 (QoS))
      • [1.4.1 可靠性](#1.4.1 可靠性)
      • [1.4.2 安全性](#1.4.2 安全性)
      • [1.4.3 策略](#1.4.3 策略)
      • [1.4.4 控制](#1.4.4 控制)
      • [1.4.5 管理](#1.4.5 管理)
  • [2. SOA的设计原则](#2. SOA的设计原则)

1. SOA设计的标准要求

  • OASIS
    • Organization for the Advancement of Structured Information Standards
    • 即,结构化信息标准促进组织
    • 是一个国际性的开放标准制定组织

1.1 文档标准

  • SOA服务具有平台独立的自我描述XML文档
  • Web服务描述语言来描述服务

1.2 通信协议标准

  • 其服务的通信消息,通常使用 XML Schema来定义

1.3 应用程序统一登记与集成

  • SOA 通过一个目录列表来进行维护服务,称为登记处(Registry)
    • 应用程序在登记处寻找并调用某项服务
    • 统一描述、定义、集成是服务登记的标准

1.4 服务质量 (QoS)

  • 服务质量(QoS):
    • Quality of Service

1.4.1 可靠性

  • 服务提供者和消费者的文档交换形式
    • Once-and-only-once Delivery:仅传送一次
    • At-most-once Delivery:最多传送一次
    • Duplicate Message Elimination:重复消息过滤
    • Guaranteed Message Delivery:保证消息传送

1.4.2 安全性

  • Web服务安全规范
    • 作用:保证消息的安全性
    • 包括:认证交换、消息完整性、消息保密

1.4.3 策略

  • 策略断言
    • Policy Assertions
    • 服务消费者与服务提供者通信需要满足的要求
  • 一项策略可能会包含多个断言

1.4.4 控制

  • SOA服务可以用来整合数据孤岛 (Silos of Data)、应用程序、组件
  • 异步通信、并行处理、数据转换以、错误处理等流程请求将被标准化

1.4.5 管理

需要一个控制台,没有什么有意义的话

2. SOA的设计原则

  • 无状态

  • 单一实例

  • 明确定义的接口

    • WSDL:用其来定义服务接口
    • WS-Policy:用于描述服务规约
    • XML Schema:用于定义所交换的消息格式(即,公共数据)
  • 自包含和模块化

    • 自包含:指服务依赖其他服务而存在 教材原文:完全独立自主的,独立进行部署、版本控制、自我管理和恢复。
  • 粗粒度

    • 服务数量不应太多
    • 依靠消息交互(而不是RPC调用)
    • 通常消息量大,但交互频度较低。
  • 服务之间的松耦合性

  • 重用能力

  • 互操作性、兼容和策略声明

    • WS-Policy用于定义可配置的互操作语义
    • 利用策略声明确保服务期望和语义兼容性方面的完整和明确

相关推荐
学习菌子11 小时前
第12章:【系统架构设计师】系统架构设计-数据流风格
系统架构·软考高级·系统架构设计师·数据流风格·架构风格
Ashlee_code11 小时前
美联储降息趋缓叠加能源需求下调,泰国证券交易所新一代交易系统架构方案——高合规、强韧性、本地化的跨境金融基础设施解决方案
java·算法·金融·架构·系统架构·区块链·需求分析
爱思德学术2 天前
中国计算机学会(CCF)推荐学术会议-A(人机交互与普适计算):CHI 2026
系统架构·人机交互
半桔3 天前
【Linux手册】重定向是如何实现的?Linux下为什么一切皆文件?
linux·运维·服务器·面试·系统架构·操作系统
麦兜*3 天前
SpringBoot 2.x→3.0升级实战:Jakarta EE兼容性改造清单
java·spring boot·后端·spring·系统架构·maven·springcloud
三桥君4 天前
在AI应用中Prompt撰写重要却难掌握,‘理解模型与行业知识是关键’:提升迫在眉睫
人工智能·ai·系统架构·prompt·产品经理·三桥君
帅次6 天前
系统分析师-计算机系统-输入输出系统
人工智能·分布式·深度学习·神经网络·架构·系统架构·硬件架构
蝸牛ちゃん6 天前
云计算三大服务模式深度解析:IaaS、PaaS、SaaS
云原生·系统架构·云计算·软考高级·saas·paas·iaas
帅次6 天前
系统分析师-计算机系统-计算机系统概述&存储系统
系统架构·硬件架构·软件构建·个人开发·代码规范·设计规范
蝸牛ちゃん6 天前
系统性能评估方法深度解析:从经典到现代
架构·系统架构·软考高级·性能·性能评估