架构演进

单体架构

image.png

SOA架构

与单体架构按照技术职责进行水平拆分不同,SOA 会按照业务领域对应用进行粗粒度的垂直拆分,至于拆分到什么程度,哪些领域可以放在一起等类似问题,可以参考一下康威定理。

应用从单体应用做了垂直拆分以后,就会变成一些相对独立的应用。此时,应用间的依赖、调用等相关问题自然而然的就会浮现出来。此时就需要下面这些技术方案来解决这些问题:

  • XML - 一种标记语言,用于以文档格式描述消息中的数据。
  • SOAP(Simple Object Access Protocol) - 在计算机网络上交换基于XML的消息的协议,通常是用HTTP。
  • WSDL(Web Services Description Language,Web服务描述语言) - 基于XML的描述语言,用于描述与服务交互所需的服务的公共接口,协议绑定,消息格式。
  • UDDI(Universal Description, Discovery, and Integration,是统一描述、发现和集成) - 基于XML的注册协议,用于发布WSDL并允许第三方发现这些服务。
  • ESB(Enterprise Service Bus, 企业服务总线)- 支持异构环境中的服务、消息,以及基于事件的交互,并且具有适当的服务级别和可管理性。

image.png

微服务架构截屏2022-03-01 上午11.01.16.png

image.png
image.png