黄金网站软件app大全,百度贴吧网站开发需求分析,网站开发接单网站,搜索引擎网络推广方法负载均衡#xff1a;将四层或者七层的请求分配到多台后端的服务器上。
从而分担整个业务的负载。提高系统的稳定性#xff0c;也可以提高高可用#xff08;备灾#xff0c;其中一台后端服务器如果发生故障不影响整体业务#xff09;. 负载均衡的算法
round robin 轮询 r…负载均衡将四层或者七层的请求分配到多台后端的服务器上。
从而分担整个业务的负载。提高系统的稳定性也可以提高高可用备灾其中一台后端服务器如果发生故障不影响整体业务. 负载均衡的算法
round robin 轮询 rr
负载均衡的默认算法请求轮流分配给后端服务器。
轮询算法适合用于后端处理器能力相近的情况默认的算法可以不加。
默认 加权轮询-weight round robin
轮询的升级版给每个后端服务器赋予不同的权重。
处理能力更强的服务器设置更高的权重处理能力低的设置低权重。
高峰时间可以通过这个方法进行流量的优化适用于服务器处理能力差异比较大的情况。
weightnumber ip_Hash
当我们访问后端服务器根据客户端的IP地址使用hash算法计算出IP地址的hash值然后再根据请求发送到相应的后端服务器。
如果客户端访问的ip地址相同通过hash算法再一次的请求会分配到上一次访问的服务器保证会话的稳定。
负载均衡的会话保持——ip_Hash
会话保持到期之后会话中断重新请求会重新计算hash值。
ip_hash 最小连接数
配合加权轮询一起使用最小连接数的算法可以将请求发送到当前连接比较少的后端服务器。
这种算法适用后端服务器处理任务耗时不同的情况可以有效的避免所有的请求集中在处理能力更强的后端服务器上。
least_conn
weightnumber URL_Hash
根据请求当中url地址来计算hash值如果客户端请求的url地址相同客户端的请求会被分配到同一个服务器。
后台服务器的数量发生变化会影响结果。这个讨论无意义
hash_$request_uri consistest 负载均衡的特点
1、根据算法把请求分配到不同的服务器
2、客户端访问的是代理地址响应也是代理服务器响应。
3、客户端并不了解后端服务器的情况
4、可以提高安全性后端服务器是隐藏的。
5、负载均衡是有缓存的可以直接访问缓存提高响应的速度。 负载均衡的架构
我们做个实验三台主机具体配置如下
zw4192.168.254.14代理服务器
zw5192.168.254.15后端
zw6192.168.254.16后端
客户端浏览器
配置流量分发主要是依靠服务器完成的主要配置在代理服务器完成配置算法。 七层代理
upstream模块仅支持http协议用来处理http的请求和响应。
upstream只能写在http模块当中不能在server也不能在全局。
基于IP的七层
轮询 配置完之后我们访问主机192.168.254.14的nginx会发现轮流访问的是设定的2台服务器的nginx并且状态码为200表示没有缓存。 加权轮询 这时候权重高的服务器被访问的次数多一点状态码依然为200没有缓存。 ip_hash 这时候第一次会根据hash算法匹配到一台服务器之后再访问都是他了并且状态码为304表示访问缓存这是根据IP地址的hash缓存也是会话保持。 最小连接数配合轮询 这时候和轮询没什么区别这是因为不好演示最小连接数状态码依然为200。 URL_hash 这时候第一次会根据算法匹配到一台服务器之后再访问都是他了并且状态码为304表示缓存。注意这里的缓存是url缓存url地址不变才导致的访问服务器不变并不是真正的会话保持。 最后我们停掉192.168.254.15的nginx后会发现负载均衡依然再正常运行并且只能访问192.168.254.16的nginx证明了高可用。 基于域名的七层 基于域名的七层代理
首先配置代理服务器zw4的nginx主配置文件 注意1、如果使用域名才做七层需要把客户端访问的真实IP地址传递给服务端 2、如果经过代理所有经过的代理地址也要传递给服务端
接着三台主机都配置域名解析记得也要修改另外两台后端zw5和zw6的nginx上的localhost。 这时候我们发现负载均衡已正常工作当然也是默认的轮询算法。 四层代理
stream模块不支持http协议仅支持tcp和udp处理数据包流量分发。
四层代理只能写在全局模块当中。
根据上面的实验我们依然在代理服务器zw4上配置nginx的主配置文件注意server中的端口号不能和下面http模块中server的端口号一样所有这里我们随便定了个81。 重启nginx后我们发现负载均衡的算法依然是轮询。 注意
四层算法默认是轮询也支持加权轮询和最小连接数支持。
ip_hash和uri_hash不能在四层算法中使用因为四层不能处理响应。