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

相关推荐
国科安芯21 小时前
低轨卫星姿态与轨道控制系统中高可靠MCU的选型研究——基于AS32S601的抗辐照性能试验数据分析
分布式·科技·单片机·嵌入式硬件·系统架构
智造ERP规划1 天前
项目型制造成本核算:WBS成本归集、变更冲击量、完工百分比,三个逻辑讲透
数据库·系统架构·软件工程·制造
智造ERP规划1 天前
项目型制造财务核算全流程:收入什么时候确认、成本怎么归集、开票≠收款,一条链讲透
大数据·系统架构·软件工程·制造
星蓝_starblue2 天前
零服务器、零数据库!开源growth-board,利用GitHub自动管理刷题/学习/求职全流程
服务器·数据库·程序人生·系统架构·node.js·github·改行学it
画中有画2 天前
RAG 大模型应用系统架构设计
系统架构
微三云 - 廖会灵 (私域系统开发)2 天前
消费返物业费系统架构设计与技术实现:智慧社区消费返利平台全链路方案
系统架构
Sam_Deep_Thinking2 天前
用Java 17从0到1写一个mini版RPC,理解远程调用的本质
java·面试·rpc·程序员·系统架构
Sam_Deep_Thinking2 天前
如何维持缓存的一致性?
java·缓存·面试·程序员·系统架构
youngerwang3 天前
【系统架构案例分析每日深耕 Day 5】解释器/规则引擎架构在风控系统中的应用
系统架构·解释器模式·案例分析·风控系统
BerrySen1783 天前
基于Python的高性能多智能体协同RAG(检索增强生成)系统架构与生产级实现指南
人工智能·python·系统架构