知识卡片
可扩展性的两个维度
内容
应用的可扩展性可以拆成两个独立维度:垂直扩展(提升单台设备的CPU数量或性能)和水平扩展(增加设备数量来提升处理能力)。二者不是互斥选项而是可叠加的两个杠杆——垂直扩展受限于单机硬件天花板,水平扩展则需要应用本身能被分布式部署(如无状态、无本地依赖)。发散:这个二分法可以套用到几乎所有性能问题上,判断一个系统”扩不动”,先看是卡在单机瓶颈还是卡在架构不支持横向复制。
参考来源
- 位置:《Go Web编程》第1章《Go与Web应用》(源文件:_epub-src/OEBPS/text00013.html)
- 结论依据:原文在该章节围绕“应用的可扩展性可以拆成两个独立维度:垂直扩展(提升单台设备的CPU数量或性能)和水平扩展(增加设备数量来提升处…”给出定义、示例或限制条件;摘录中的术语、代码片段或对比关系直接支撑本卡片的结论。
- 原始内容:的管理者可以通过添加更多硬件来获得更强的请求处理能力。 有两种方式可以对性能进行扩展: 一种是 垂直扩展 (vertical scaling),即提升单台设备的CPU数量或者性能; 另一种则是 水平扩展 (horizontal scaling),即通过增加计算机的数量来提升性能。 因为Go语言拥有非常优异的并发编程支持,所以它在垂直扩展方…