不同功能实现物理分离来实现伸缩
网站发展早期-通过增加服务器提高网站处理能力时,新增服务器总是从现有服务器中哦分离出部分功能和服务
![](https://img.haomeiwen.com/i2455482/6767621b2f96f41d.png)
单一功能通过集群实现伸缩
-
应用服务器伸缩设计
![](https://img.haomeiwen.com/i2455482/fa85344a15b670b2.png)
![](https://img.haomeiwen.com/i2455482/26444470508e8b92.png)
负载均衡方案:
![](https://img.haomeiwen.com/i2455482/19520ab552c8965e.png)
![](https://img.haomeiwen.com/i2455482/4545b5d448ae73ba.png)
3.反向代理负载均衡
![](https://img.haomeiwen.com/i2455482/5cd2f0b90adec142.png)
4.ip负载均衡
![](https://img.haomeiwen.com/i2455482/ac19d9838cefa898.png)
5.mac负载均衡
![](https://img.haomeiwen.com/i2455482/feb08caa3cb83531.png)
负载均衡算法:
轮询/加权轮询/随机/最少连接/hash/随机/加权
-
分布式缓存伸缩策略
分布式缓存一致性hash算法
![](https://img.haomeiwen.com/i2455482/9924765b4a7066d2.png)
-
数据存储服务器
和缓存服务器集群的伸缩性设计不同,数据存储服务器集群的伸缩性对数据的持久性和可用性提出了更高的要求。
缓存的目的是加速数据读取的速度并减轻数据存储服务器的负载压力,因此部分缓存数据丢失并不影响业务的正常处理,因为数据还可以从db获取。
![](https://img.haomeiwen.com/i2455482/c680955bde922428.png)
主从分离,根据业务分库,大表分片
成熟分库分片产品 Amoba/Cobar
![](https://img.haomeiwen.com/i2455482/be2d718a3a908115.png)
![](https://img.haomeiwen.com/i2455482/d9f960ba3ccdde2d.png)
![](https://img.haomeiwen.com/i2455482/a71e3483e0e8a357.png)
-
NoSql数据库的伸缩性设计
HBase分案
![](https://img.haomeiwen.com/i2455482/123ae57b9fb69ccb.png)
![](https://img.haomeiwen.com/i2455482/1cab0f2df651b77a.png)
网友评论