软考架构-面向服务的架构风格

一、SOA

1、概念

面向服务开发,服务之间通过简单、精确定义接口进行通信,不涉及底层编程接口和通信模型。多个服务挂载在ESB(企业服务总线)上进行通信。

2、特征

可从企业外部访问、随时可用(服务请求能被及时响应)、粗粒度接口(粗粒度提供一项特定的业务功能,细粒度服务代表技术构件的方法)、服务分级、松散耦合(服务提供者和服务使用者分离)、可重用的服务及接口设计管理、标准化的接口(WSDL/SOAP/XML是核心)、支持各种消息模式、精确定义的服务接口。

构件-可独立部署的功能单元(对象、接口、服务等),概念比较广

3、关键技术

|--------|-------------------|
| 功能 | 协议 |
| 发现服务 | UDDI、DISCO |
| 描述服务 | WSDL、XML、Schema |
| 消息格式层 | SOAP、REST |
| 编码格式层 | XML(DOM、SAX) |
| 传输协议层 | HTTP、TCP/IP、SMTP等 |

UDDI(Universal Description Discovery and Integration):是一套基于WEB的、分布式的、为WebService提供的、信息注册中心的实现标准规划。用于WEB服务注册统一描述、发现和集成。

WSDL(WebService描述语言):用户描述服务

SOAP(简单对象访问协议):用于交换XML编码信息的轻量级协议、用于传递信息、服务远程调用

XML:是WebService平台中表示数据的基本格式,用于数据交换

4、Web Service

服务提供者、服务注册中心、服务请求者。服务提供者将服务描述发布到服务注册中心,供服务请求者调用。

5、服务注册表

服务注册:服务提供者在注册中心发布服务

服务位置:服务在注册中心的位置

服务绑定:服务请求者利用检索到的服务接口编写代码,代码与注册的服务绑定,调用注册的服务,实现交互

6、企业服务总线ESB

集成不同协议的不同服务,ESB做了消息转化、解释以及路由的工作,以此来让不同服务互联互通

包括:客户端(服务请求者)、基础架构服务(中间件)、核心集成服务(提供服务)

特点:

总线作用,将各种服务进行连接与整合

服务元数据和服务注册管理

服务请求者和提供者之间传递数据,以及对这些数据进行转换

发现、路由、匹配和选择的能力

相关推荐
国际云,接待1 小时前
云服务器的运用自如
服务器·架构·云计算·腾讯云·量子计算
好吃的肘子5 小时前
Elasticsearch架构原理
开发语言·算法·elasticsearch·架构·jenkins
编程星空5 小时前
架构与UML4+1视图
架构
zkmall7 小时前
商业架构 2.0 时代:ZKmall开源商城前瞻性设计如何让 B2B2C 平台领先同行 10 年?
架构·开源
不爱学英文的码字机器9 小时前
事件驱动架构:从传统服务到实时响应的IT新风潮
架构
layneyao10 小时前
DeepSeek模型架构详解:从Transformer到MoE
深度学习·架构·transformer
ktkiko1110 小时前
顶层架构 - 消息集群推送方案
java·开发语言·架构
Kookoos12 小时前
Redis + ABP vNext 构建分布式高可用缓存架构
redis·分布式·缓存·架构·c#·.net
GISer_Jing13 小时前
React底层架构深度解析:从虚拟DOM到Fiber的演进之路
前端·react.js·架构
MZWeiei1 天前
Spark SQL 运行架构详解(专业解释+番茄炒蛋例子解读)
大数据·分布式·sql·架构·spark