简介
将请求/数据【均匀】分摊到多个操作单元上执行
负载均衡方案
1、客户端——>反向代理层(的负载均衡)
解决方案:
是通过“DNS轮询”实现:
DNS-server对于一个域名配置了多个解析ip,每次DNS解析请求来访问DNS-server,会轮询返回这些ip,保证每个ip的解析概率是相同的。这些ip就是nginx的外网ip,以做到每台nginx的请求分配也是均衡的。
2、反向代理层——>站点层(的负载均衡)
解决方案:
通过“nginx”实现
3、站点层——>服务层(的负载均衡)
解决方案:
通过“服务连接池”实现
上游连接池会建立与下游服务多个连接,每次请求会“随机”选取连接来访问下游服务。
4、数据库(的负载均衡)
解决方案:
数据层的负载均衡更为复杂一些,它分为“数据的均衡”,与“请求的均衡”。
数据的均衡是指:水平切分后的每个服务(db,cache),数据量是差不多的。
请求的均衡是指:水平切分后的每个服务(db,cache),请求量是差不多的。