vlambda博客
学习文章列表

3张图看懂分布式架构与微服务架构的关系

上期文章发布之后,大家清晰地了解了分布式架构与集群架构的区别和联系,但是却发现很多人又将分布式架构与微服务架构搞混了,因此在这里给大家做一些说明。


首先说结论:我们可以说微服务架构是一种分布式架构,而不能说分布式架构就是微服务架构。微服务架构只是分布式架构的一种实现方案。


首先我们从面向对象的角度来看一下。:分布式架构是一个顶层接口设计,SOA架构继承自分布式架构,而微服务架构和ESB架构又继承自SOA架构。(如下图所示)


而我们用的Spring Cloud 和 Dubbo等微服务框架,只是微服务架构接口的一种具体实现。它们的关系就好像java中的接口、类、实体对象的关系一样。


因此,SOA架构是分布式架构的一种抽象,微服务架构和ESB架构又是SOA架构的一种落地方案,框架是这些方案的具体实例。


分布式架构的范围通常比较广泛,除了有分布式应用,还有分布式存储、分布式网络、分布式数据库等等。而我们所说的微服务架构,通常是指分布式应用范畴。(如下图所示)

3张图看懂分布式架构与微服务架构的关系

分布式架构专注于将系统服务化和分散化,微服务架构专注于将服务精细化和专业化。
微服务架构具有分布式架构的全部特点,而分布式架构却不一定包含微服务的全部特点。(如下图所示)

--正文 END-