跳到主要内容

可扩展性

垂直扩展怎样提升单机容量?​

  • Scale-up: 为现有机器增加 CPU、内存或更快存储,不改变多节点协调模式;
  • 收益: 部署与数据管理相对简单,适合尚未触及单机极限的系统;
  • 限制: 硬件有上限,升级可能停机,单节点仍可能成为故障点,不能把更大机器等同于高可用;

水平扩展怎样提升整体容量?​

  • Scale-out: 增加实例并分散工作,可按需求增减节点;
  • 收益: 可以分批升级并增加冗余,各部分能按负载扩展;
  • 代价: 状态共享、数据分区、并发和故障处理更加复杂,下游也可能因上游扩容而过载;
  • 扩展判断: 观察增加资源后吞吐和延迟是否改善,找到真正瓶颈,不能只数服务器数量;

扩容前如何确认真正的限制?​

  • 观测: 先找 CPU、内存、磁盘、网络或下游容量中最先饱和的一项,避免只增加没有短板的资源;
  • 验证: 对比增加资源前后的吞吐和尾延迟,若收益很小,检查串行步骤、锁竞争和共享依赖;
  • 状态: 无状态应用较容易分散请求,有状态部分仍需复制、分片或协调,不能把实例数直接当线性容量;
  • 相关概念: 故障时能否继续服务属于 可用性,扩展能力关注负载变化时资源投入的效果;