网站架构的伸缩性设计
纵向分离(分层后分离)
横向分离(业务分割后分离)
不同功能进行物理分离实现伸缩
单一功能通过集群规模实现伸缩
应用服务器集群的伸缩性设计
轮询(Round Robin, RR)
加权轮询(Weighted Round Robin, WRR)
随机(Random)
最少链接(Least Connections)
源地址散列(Source Hashing)
HTTP 重定向负载均衡
DNS 域名解析负载均衡
反向代理负载均衡(在 HTTP 协议层面,应用层负载均衡)
IP 负载均衡(在内核进程完成数据分发)
数据链路层负载均衡(数据链路层修改 mac 地址,三角传输模式,LVS)
负载均衡算法
分布式缓存集群的伸缩性设计
Memcached 客户端(包括 API,路由算法,服务器列表,通信模块)
Memcached 服务器集群
Memcached 分布式缓存集群的访问模型
Memcached 分布式缓存集群的伸缩性挑战
分布式缓存的一致性 Hash 算法(一致性 Hash 环,虚拟层)
数据存储服务集群的伸缩性设计
关系数据库集群的伸缩性设计
NoSQL 数据库的伸缩性设计