从“单机”到“分布式”到“集群”,服务经历了什么?

作者:哈里谢顿日期:2025/12/27

【万字长文·图解】
从“单机”到“分布式”到“集群”——一次讲透两者的区别、联系、落地场景与常见架构


一、先放一张脑图

1单机(one box)────┬──> 集群(Cluster):多台机器干**同一件事**(横向复制)
2                └──> 分布式(Distributed):多台机器干**不同的事**(横向拆分)
3

关键词

  • 集群 = 人多力量大(量)
  • 分布式 = 专人干专事(分工)
  • 现实中往往“分布式 + 集群”混合出现(既拆分又复制)

二、集群(Cluster)详解

1. 定义

多台物理/虚拟节点组成一个逻辑整体,对外提供同一种服务,通过复制提高并发量可用性

2. 核心目标

  • Scale-Out(横向扩展)
  • High-Availability(故障转移)
  • Load-Sharing(负载均衡)

3. 分类速记

类型说明产品案例
高可用集群 HA主备切换,A 挂了 B 立刻顶MySQL MGR、Redis Sentinel、Keepalived
负载均衡集群 LB多台同时在线,流量分摊Nginx、LVS、HAProxy、AWS ELB
计算集群 HPC并行计算,CPU 加一起算Slurm、Kubernetes Job
存储集群多磁盘拼成统一存储Ceph、GlusterFS、HDFS

4. 经典架构图(以 Web 层为例)

1        ┌───> 节点 1(Nginx)
2LB──┤   ├───> 节点 2(Nginx)   对外 VIP 统一入口
3        └───> 节点 3(Nginx)
4
  • 所有节点跑同一套代码
  • 会话同步(粘性会话或 Redis);
  • 健康检查失败即剔除。

5. 优缺点

✅ 简单:代码零改造
✅ 线性扩容:加机器就提升 QPS
❌ 单点数据仍在单机(例如 MySQL 主库),集群 ≠ 数据分布式


三、分布式(Distributed)详解

1. 定义

原本单机内不同功能同一功能的不同数据拆到多台节点,节点之间通过网络协作,对外表现为一个系统

2. 核心目标

  • 拆分(数据/功能/计算)
  • 自治(局部故障不影响全局)
  • 最终一致性(CAP 权衡)

3. 拆分维度

维度案例产品
业务功能订单服务、用户服务、库存服务独立进程微服务
数据按用户 ID 取模拆成 32 库 1024 表分库分表、ShardingSphere
计算Map 节点 + Reduce 节点各干各的Hadoop MapReduce
时空同一任务流水线 Stage1→Stage2Flink 流处理

4. 经典架构图(微服务 + 分库分表)

1API 网关 ─┬─> 订单服务 ──> 订单库(分片 0-31)
2          ├─> 用户服务 ──> 用户库
3          └─> 库存服务 ──> 库存库(分片 0-15)
4
  • 每个服务代码不同数据不同
  • 节点失败只影响局部;
  • 需要分布式事务/消息最终一致性。

5. 优缺点

✅ 突破单机容量上限(数据、计算)
✅ 独立发布、弹性伸缩
❌ 复杂:远程调用、幂等、分布式事务、脑裂、网络分区
❌ 延迟比本地高 1~2 个数量级


四、集群 vs 分布式——一句话对比

维度集群分布式
单元关系同构节点(镜像)异构节点(分工)
透明性对客户端几乎透明需要服务发现、网关
扩展目标提升吞吐量&可用性提升容量&可维护性
故障范围节点级冗余,数据仍可能单点局部故障,数据/计算已拆分
代码改造零/少量必须(接口、数据路由、容错)
CAP 侧重侧重 AP(高可用)必须面对 CP/AP 选择

五、为什么总把两者混用?

“分布式”里每个子服务本身又可以是“集群”——既分工又复制

电商订单架构示例

1订单服务(集群 3 副本)──> 订单表(分片 0-15,每片 2 副本)
2
  • 分布式:订单表按用户 ID 拆成 16 个分片 → 数据分布式
  • 集群:每个分片有 2 副本 → 高可用集群

六、演进路线(老板最爱问的“三步走”)

  1. 单机集群(先解决并发&可用,不动代码)
  2. 集群分布式(数据量/研发规模变大,开始拆分)
  3. 分布式混合云/多活(地域容灾、弹性、成本)

七、常见产品对照表

场景集群产品分布式产品
数据存储MySQL MGR、Redis SentinelMySQL Sharding、TiDB、CockroachDB
计算Kubernetes ReplicaSetHadoop MapReduce、Spark、Flink
消息——Kafka、Pulsar(分区+副本)
协调——ZooKeeper、etcd、Consul

八、一张图总结(保存即可)

1               单机
2                
3        ┌───────┴───────┐
4                       
5     集群(复制)    分布式(拆分)
6                       
7        └───────┬───────┘
8                
9         现代互联网架构
10      (微服务 + 分片 + 副本)
11

九、一句话背下来

集群同一台服务好多台
分布式一台机器的任务拆成好多台机器的任务
真正的大型系统 = 分布式 + 集群——既分工又人多


从“单机”到“分布式”到“集群”,服务经历了什么?》 是转载文章,点击查看原文


相关推荐


谷歌的大反击:Gemini 3 Flash 让“快”和“聪明”终于握手言和
墨风如雪2025/12/18

还记得以前我们怎么挑选大模型吗?我们要么忍受旗舰模型“老牛拉破车”般的推理速度,只为求一个靠谱的答案;要么为了秒回的快感,去忍受轻量级模型偶尔的“胡言乱语”。 在这个2025年的尾巴,谷歌似乎终于要把这道选择题撕掉了。 12月17日,Gemini 3 Flash 正式上线。如果不看发布会,光看名字,你可能会以为这又是一个为了省钱而不得不做出的妥协版。但上手实测并扒开数据一看,这次的情况有点不一样。谷歌不想让你把它当备胎,而是想让它成为你每天都在用的主力。 速度不再是智商的敌人 让我们先聊聊最直


Labview 与欧姆龙 PLC 的 Ethernetip TCP 网口通讯:CIP 通讯的魅力
qq 8762239652025/12/10

Labview Ethernetip TCP网口通讯欧姆龙PLC OmronNX1P2NJ501NJ301PLC标签通讯 CIP通讯比Fins通讯更完美。 1.自定义变量读写 2.支持 Bool单点或数组读写 3支持数字格式单个或者数组读写 4支持浮点数单个或者数组读写 程序经过测试准确运行从此远离%转换成Fins. 在自动化控制领域,Labview 与欧姆龙 PLC 的通讯是很多工程师会面临的课题。今天咱就唠唠 Labview 通过 Ethernetip TCP 网口和欧姆龙 NX1P2


昨天分享了一套用 Nano Banana PRO做商业 PPT 定制的玩法,还推荐直接去咸鱼接单搞钱。
饼干哥哥2025/11/30

但有人说没有渠道、不知道怎么弄。。。 欸我还能说什么呢?只能是把做小生意的完整逻辑给大家讲一遍,包括:🧵- 怎么选择赛道? 公域流量:闲鱼实操、小红书怎么玩、公众号机会 私域谈单 SOP —、先讲一下认知:什么是 中介思维(Agent Thinking) 很多职场人或想要做副业的小白,最大的误区是觉得自己“必须先成为专家”才能赚钱。想做 PPT 代写觉得要设计大师,想做数据分析觉得要代码精通。这种思维导致你陷入技能学习的无底洞,或者单纯靠堆砌自己的时间去赚钱,不仅累,而且上限很低。一旦停下


CISP-PTE 日志分析1
mooyuan天天2026/1/5

目录 一、渗透准备 1、打开靶场 2、开始答题 3、分析日志 (1)基于ip地址分析 (2)基于响应值200分析 二、暴力破解 1、firefox打开adminlogin.php页面 2、bp inception设置为on 3、输入用户名密码登录 4、bp抓包发送到intruder 5、配置intruder的positon 6、配置intruder的payload并开启攻击 7、分析攻击结果 8、正确密码登录 本文详细讲解CTF-PTE靶场日志分析关卡的渗透实


React Native for Harmony:订单列表页面状态筛选完整实现
lili-felicity2026/1/13

目录 核心知识点:订单列表状态筛选 完整核心用法 1.1 核心内置 API/Hook/组件 介绍实战开发:双版本完整实现 2.1 版本一:基础极简版 - 订单状态单选筛选OpenHarmony6.0+ TS环境专属避坑指南扩展用法:订单筛选高频进阶技巧 一、核心知识点:订单列表状态筛选 完整核心用法 1、核心内置 API/Hook/组件 介绍 本次实现的订单列表「状态筛选」功能,全程基于React Native原生核心能力开发、无任何第三方依赖、无鸿蒙原生桥接代码,所有能力完美适配鸿蒙端,且在T


【Linux 系统开发】基础开发工具详解:软件包管理器、编辑器。编译器开发实战
纵有疾風起2026/1/21

目录 引言 一. 软件包管理器 1.1 什么是软件包 1.2 Linux软件生态 1.3 如何使用yum/apt 1.4 安装源 二. 编辑器Vim 2.1 Linux编辑器-vim 2.2 vim的基本概念 2.3 vim的基本操作 2.4 vim命令模式命令集 1)进入插入模式: 2)从插入模式切换为命令模式 : 3)移动光标 : 4)删除文字: 4)复制: 5)替换: 6)撤销上一次操作: 7)更改 : 8)跳至指定的行: 总结并拓展: 2.5


SwiftUI 光晕动画性能优化:消除托盘缩放卡顿的实战方案
zhyongrui2026/1/30

文章目录 SnipTrip 简介问题现象问题根源分析1. 多层离屏渲染2. 动态参数每帧变化3. 多个光晕组件同时渲染4. 动画与光晕竞争 GPU 资源 解决方案Plan A: 在托盘动画期间暂停光晕 ✅ (已实施)设计思路实现细节实施效果技术细节说明 备选方案Plan B: 使用 drawingGroup() 进行光晕栅格化设计思路实现方式优缺点分析 Plan C: 优化贴纸按压动画时序设计思路实现方式优缺点分析 Plan D: 降低光晕刷新率设计思路实现


hCaptcha 验证码图像识别 API 对接教程
崔庆才丨静觅2026/2/8

本文将介绍一种 hCaptcha 图像识别 API 对接说明,它可以通过用户输入识别的内容和 hCaptcha验证码图像,最后返回需要点击的小图像的坐标,完成验证。 申请流程 要使用 API,需要先到 hCaptcha 图像识别 API platform.acedata.cloud/documents/c… 对应页面申请对应的服务,进入页面之后,点击「Acquire」按钮,如图所示: 如果你尚未登录或注册,会自动跳转到登录页面邀请您来注册和登录,登录注册之后会自动返回当前页面。 在首次申请时会


CSDN AI社区镜像创作者征集计划正式启动,参与即可获得奖励哦~
CSDN官方博客2026/2/17

CSDN AI 社区是聚焦 AI 技术产业落地的开发者服务平台(官方入口),核心为创作者搭建技术价值转化桥梁,AI社区涵盖四大核心模块:算力市场、模型广场、社区镜像、Agent市场。 社区镜像是CSDN AI社区为开发者提供的核心技术分享与变现载体,可理解为封装了特定AI开发环境、模型或项目的标准化资源包,核心特点与价值如下: 1. 内容核心:包含完整依赖库、框架配置(如TensorFlow/PyTorch)、模型权重、推理代码等,解决环境适配、部署繁琐问题; 2. 使用价值:用户可直


【转载】Cowork and plugins for teams across the enterprise
是魔丸啊2026/2/25

转载 btw,文中提到的pluings,官方都有github仓库: github.com/anthropics/… github.com/anthropics/… 管理员现在可以创建私有插件市场,对 plugins、connectors 和 skills 进行更好的控制。我们还为更多部门添加了新的 plugins 和 connectors。 今天,我们推出了 Cowork 和 plugins 的更新,帮助 enterprises 根据工作方式定制 Claude。Plugins 将 Cla

首页编辑器站点地图

本站内容在 CC BY-SA 4.0 协议下发布

Copyright © 2026 XYZ博客