首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >什么是Scale Up(纵向扩展)和Scale Out(横向扩展)?

什么是Scale Up(纵向扩展)和Scale Out(横向扩展)?

作者头像
JavaEdge
修改2025-06-25 16:22:30
修改2025-06-25 16:22:30
15.7K0
举报
文章被收录于专栏:系统设计系统设计

本文已收录在Github,关注我,紧跟本系列专栏文章,咱们下篇再续!

  • 🚀 魔都架构师 | 全网30W技术追随者
  • 🔧 大厂分布式系统/数据中台实战专家
  • 🏆 主导交易系统百万级流量调优 & 车联网平台架构
  • 🧠 AIGC应用开发先行者 | 区块链落地实践者
  • 🌍 以技术驱动创新,我们的征途是改变世界!
  • 👉 实战干货:编程严选网

1 Scale Out

即Scale horizontally,横向扩展,向外扩展 。

称为集群系统。指由多个节点组成的系统,这种系统的扩展主要以水平扩展方式(指增加节点的方式)来进行。

Scale-out 通过将多个低性能的机器组成一个分布式集群来共同抵御高并发流量的冲击。

比如向原有的web、邮件系统添加一个新机器。

2 Scale Up

即Scale vertically)纵向扩展,向上扩展。

称为单节点系统,指系统中只包括一个有效节点(如果需要HA时,可以将两个单节点以System Replication形式构成单节点的HA架构)。这种架构的系统只具有垂直扩展能力,当需要扩展系统时,通过在节点上增加更多的CPU、内存和硬盘来扩大系统的能力。

Scale-up通过购买性能更好的硬件提升系统的并发处理能力,

比如:我们向原有的机器增加CPU、内存数。

3 抉择

无论是Scale Out,Scale Up,Scale In,实际上就是一种架构的概念,这些概念用在存储上可以,用在数据库上,网络上一样可以。

何时选择Scale-up或Scale-out呢?

一般系统设计初期会考虑使用Scale-up,因为足够简单,堆砌硬件解决即可,但当系统并发超过单机的极限时,就要使用Scale-out了。

Scale-out虽能突破单机限制,但也会引入一些复杂问题。比如,

  • 若某节点故障,如何保证 HA?
  • 当多个节点有状态需要同步时如何保证状态信息在不同节点的一致性?
  • 如何做到使用方无感知的增加和删除节点?

这些问题的存在与解决也伴随着分布式系统不断完善发展。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/09/22 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 Scale Out
  • 2 Scale Up
  • 3 抉择
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档