《系统架构设计师教程(第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用于定义可配置的互操作语义
    • 利用策略声明确保服务期望和语义兼容性方面的完整和明确

相关推荐
2501_912784081 天前
TaoCarts 反向海淘系统架构:1688自动代采与高并发缓存设计全解析
缓存·系统架构·跨境电商·taocarts
007张三丰1 天前
系统架构设计师范文7:论软件系统架构评估方法及其应用
系统架构·软考高级·系统架构设计师·atam·架构评估·saam·高级论文范文
绿蕉1 天前
端到端自动驾驶:系统架构的演进与未来
人工智能·系统架构·自动驾驶
_codemonster2 天前
(案例)软考系统分析师「系统规划与分析」核心知识梳理
系统架构
能喵烧香2 天前
鸿蒙并非“国产版本的iOS”,本质是对标安卓体系的国产开源操作系统
智能手机·系统架构·开源
2603_954708312 天前
微电网对等控制架构:多代理系统的协调运行与自主决策
人工智能·物联网·架构·系统架构·能源
卷毛的技术笔记2 天前
双十一零点扛过10倍流量洪峰:Sentinel与Redis+Lua的分布式限流深度避坑指南
java·redis·分布式·后端·系统架构·sentinel·lua
书香门第2 天前
系统设计练习 - 实时警员安全报警系统
分布式·系统架构·系统设计
STAT abil2 天前
docker离线安装及部署各类中间件(x86系统架构)
docker·中间件·系统架构
能喵烧香2 天前
鸿潮万相:全品类OpenHarmony定制发行版全景详解
linux·系统架构·开源