文章目录

SOA (Service-Oriented Architecture,面向服务的架构)是一种面向服务的思维方式,它将应用程序的不同功能(服务)通过服务之间定义良好的接口和契约联系起来。SOA 核心思想是服务是一种可重复的业务,将其经过标准封装达到复用的目的。SOA 可以允许各种不同的技术来表达 SOA 的架构理念,而业界比较流行的实现是 WebService,其中 WebService 采用 HTTP 协议传输数据,采用 XML 格式封装数据。微服务架构和 SOA 的思想没有太大的差别,从实现的方式而言,微服务架构强调实现的轻量化,做到服务粒度更细。这里,微服务的“微”指的并不是服务,而实际上是应用粒度。为了更好地识别 SOA 与微服务架构之间的区别,我们来做一个横向对比。

方面 SOA 微服务架构
应用粒度 多个系统整合成一个服务,粒度大 一个系统拆分成多个服务,粒度小
服务架构 企业服务总线(ESB),集中式架构 服务自治,松散式架构
服务规模 服务规模较小 服务规模膨胀
服务部署 单体架构,业务耦合 功能独立,独立部署

总结下,微服务架构可以理解成 SOA 的升级版,强调实现的轻量化,做到服务粒度更细。随着敏捷开发、持续交付、虚拟化技术、DevOps 理论的实践,微服务架构越来越被重视与应用。

(完)

微信公众号

文章目录