可扩展架构设计:让系统“长大“的秘密
651 | 可扩展架构设计:让系统"长大"的秘密
想象你开了家奶茶店。
从小店起步:
- 1个店员,1台设备
- 每天50杯
业务增长后:
- 10个店员,3台设备
- 每天500杯
扩张到连锁:
- 100家门店
- 中央配送,统一管理
可扩展架构,就是让系统能优雅地"长大"。
一、扩展性的两个维度
1. 垂直扩展(Scale Up)
定义:增加单机配置(CPU、内存、磁盘) 优点: ✓ 简单,无需改代码 ✓ 无网络开销,延迟低 ✓ 适合单节点瓶颈 缺点: ✗ 有物理上限 ✗ 成本非线性增长 ✗ 单点故障 示例: 4核CPU → 32核CPU 16GB内存 → 128GB内存2. 水平扩展(Scale Out)
定义:增加机器数量 优点: ✓ 无理论上限制 ✓ 成本线性增长 ✓ 无单点故障 缺点: ✗ 需要代码支持 ✗ 网络开销 ✗ 复杂度增加 示例: 1台MySQL → 3台MySQL集群