《系统设计》课程学习笔记—可扩展性

227 阅读1分钟

可扩展性是衡量系统通过添加或删除资源以满足需求来响应更改的程度。

scalability.webp

让我们讨论不同类型的扩展:

垂直扩展

垂直扩展(也称向上扩展)通过向现有机器添加更多功能来提高系统的可扩展性。换句话说,垂直扩展是指通过增加硬件容量来提高应用程序的能力。

优点

  • 易于实现
  • 易于管理
  • 数据一致

缺点

  • 高停机时间的风险
  • 更难升级
  • 可能会有单点故障

水平扩展

水平扩展(也称为向外扩展)通过添加更多机器来扩展系统的规模。它通过向现有服务器池中添加更多实例来提高服务器的性能,允许更均匀地分配负载。

优点

  • 增加冗余
  • 更好的容错性
  • 灵活高效
  • 更容易升级

缺点

  • 复杂性增加
  • 数据不一致
  • 下游服务负载增加