分布式和微服务是两种不同的软件架构模式,虽然它们有一些共同点,但也有显著的区别。以下是它们的主要区别:

分布式系统

child::

分布式

[father::元笔记汇总]

梗概

  1. 定义: 分布式系统是指由多个独立的计算机节点组成的系统,这些节点通过网络通信协作完成任务。分布式系统中的每个节点可以独立运行,系统具有较强的容错性和扩展性。
  2. 组件: 组件可以是任何功能模块,包括数据库、文件系统、应用程序等。
  3. 架构: 组件可能是紧耦合或松耦合的,可能没有明确的边界。

设计理念

child::CAP

使用范围

场景

使用场景: 用于需要处理大量数据和请求的场景,例如大数据处理、分布式存储、分布式计算等。

指向原始笔记的链接

微服务架构

child::

微服务架构

适用范围:

  1. 便于维护业务的小更新
  2. child::分布式与微服务的对比

1. 场景:

  1. 复杂的应用系统
  2. 服务模块粒度比分布式更小

梗概:

  • 微服务架构的主要思想就是常见的微分解耦思想
  • 将大的软件系统,按业务逻辑拆分呈弱耦合服务模块

实例:

在公司的一个项目组中, 大致架构为:

详细视频解说:

【IT老齐064】上了微服务就能高并发?扯淡,几张图给你讲明白微服务架构的作用_哔哩哔哩_bilibili

指向原始笔记的链接

主要区别

  1. 粒度: 分布式系统的粒度较大,可能包含整个应用程序或系统的不同部分;微服务的粒度较小,每个服务通常负责特定功能。
  2. 独立性: 分布式系统中的组件可能会有较强的依赖性,而微服务中的每个服务都是独立的,甚至可以使用不同的技术栈。
  3. 管理和部署: 分布式系统通常集中管理,微服务架构则倾向于独立管理和部署。

总结来说,分布式系统是一种更广泛的概念,而微服务是一种特定的分布式架构风格。