失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 系统架构设计师 - 单体架构 SOA架构 微服务架构

系统架构设计师 - 单体架构 SOA架构 微服务架构

时间:2022-04-14 09:49:21

相关推荐

系统架构设计师 - 单体架构 SOA架构 微服务架构

文章目录

横向对比SOA设计原则主要技术UDDI 统一描述发现集成SOAP 简单对象访问协议WSDL web服务描述语言BPEL 业务过程执行语言REST 表述性状态转移实现方法WebServiceESB服务注册表主要问题

横向对比

SOA

一种粗粒度、松耦合的服务架构,每个功能被封装为独立的服务,服务间通过定义精确良好的接口进行通信,客户端可以按一定顺序调用这些服务形成业务逻辑。服务间交互不必关注各自的实现细节,和部署的操作系统环境。SOA中单个服务是基于ODD设计的,但总体上是面向服务的。

设计原则

粗粒度:服务能划分就划分到一起

松耦合:服务间通过接口进行交互,服务实现实现服务接口,

内包含模块化:高度内聚

定义精确稳定:服务的定义要精确,防止错误使用,也要稳定

主要技术

UDDI 统一描述发现集成

服务发布查找规范。定义服务信息注册规范,以便被需要该服务的用户查找并使用。定义服务概念,定义编程接口,用户可根据该接口发布自己的服务,或发现需要的服务以满足业务场景。包括内容:数据模型(描述服务发布查找的相关内容)、API(提供标准的服务发布、服务查找的API接口)、注册服务(注册中心角色,服务请求者和服务提供者的纽带)

SOAP 简单对象访问协议

分布式环境下,基于XML的信息交互协议,定义服务请求者和服务提供者的信息通讯规范。通过XML格式化信息,通过HTTP承载信息,包括:封装(封装一个框架以描述消息发送者、消息提供者、消息具体内容、接收后处理方式)、编码规则(定义序列化机制,用以传输应用间交互的数据类型的实例)、RPC(RPC定义远程过程调用和应答协议)、绑定(绑定底层框架协议,以传输SOAP封装)。SOAP消息内容包括:封装(必选,封装顶层元素)、SOAP头(可选,接收后处理方式等元素)、SOAP体(实际传递消息内容的容器)

WSDL web服务描述语言

描述WEB服务和如何与WEB服务进行通讯的XML语言。描述了三个内容:服务功能、服务数据格式和协议、协议地址端口地址。分为服务接口定义和服务实现定义两种。

BPEL 业务过程执行语言

基于XML的业务过程编程语言,每个业务过程是由WEB服务实现,可以通过排序、组合等自上而下的实现面向服务架构。多个WEB服务可以组合成一个大的组织结构,可以为视为一个WEB服务被使用或参与更大的组织结构。

REST 表述性状态转移

基于HTTP和XML的WEB通讯技术,能够降低开发难度,提高伸缩性。三个关注点分离(资源、资源的表示、资源的操作)。所有的事物都抽象为资源,每个资源都有唯一标志,通过标准统一的操作接口对资源进行操作,对资源操作不会修改资源状态。

实现方法

WebService

分为三个角色,服务提供者(服务所有者,负责定义并实现服务。通过WSDL描述服务特征,通过UDDI将服务发布到注册中心,以便被查找使用)、服务请求者(服务使用则,通过UDDI在注册中心查找相应服务,或直接通过WSDL查找服务特征,然后通过SOAP绑定服务进行调用。可以是服务或浏览器)、服务注册中心(服务提供者和服务发现者的纽带,服务提供者发布,服务请求者查找,可选角色,当静态绑定时,可以没有注册中心)

ESB

传统中间件技术和XML、WEB服务等结合的产物,主要支持异构系统集成,具备复杂数据的传输能力,支持基于内容的路由和增强,并提供统一的一致的接口。

服务注册表

主要用于SOA设计,通过策略执行点,完成服务的注册,以便被查找并使用。

主要问题

服务设计和划分粒度、

SOA服务流程组织、

SOA与原系统集成

SOA

如果觉得《系统架构设计师 - 单体架构 SOA架构 微服务架构》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。