负载均衡作用
- 负载均衡(LB)分为四层负载均衡和七层负载均衡两种。
- 是建立在现有的网络环境,能够为现有的网络设备或者服务器提供更好的服务,提高吞吐量,提升并发性能,提高服务器处理性能,也能提高服务器计算能力,使得网络设备更加的灵活。
- 当有大量的请求来到服务器时,负载均衡可以均衡德分地到不同的计算机节点上,让更多的计算机节点来请求和响应,因此可以大大地缩短用户请求等待的时间
四层负载均衡
基于IP加端口的负载均衡 通过转发请求到后台的服务器,它是
只负责转发
,并且会记录当前连接的由哪台服务器去处理的,并且后续这个连接的请求都是由这台服务器去处理。长连接,属于传输层,主要基于TCP和UDP
主要包含哪几种:
- F5 硬负载均衡
- LVS 四层负载均衡
- Nginx 可以做四层负载均衡,主要是七层负载均衡
七层负载均衡
基于URL或者IP的负载均衡 基于应用层的,针对于HTTP协议的负载均衡,
可以作为web服务器,可以处理请求
主要包含哪几种:
-Nginx 七层负载均衡
-Apache 七层负载均衡
-Haproxy 七层负载均衡、四层负载均衡
DNS地域负载均衡
就近原则: 访问同一个域名: www.baidu.com
在北京,访问的是北京的服务器群来处理请求
在上海,访问的是上海的服务器群来处理请求
负载均衡原理
ip_hash
upstream tomcats{
ip_hash;
server 199.12.2.3:8080 ;
server 199.12.2.4:8080 down;
server 199.12.2.5:8080 ;
}
url hash
upstream tomcats{
hash $request_uri;
server 199.12.2.3:8080;
server 199.12.2.4:8080;
server 199.12.2.5:8080;
}
least_conn 最小连接数
请求会发给服务器中连接数较少的服务器
upstream tomcats{
least_conn;
server 199.12.2.3:8080;
server 199.12.2.4:8080;
server 199.12.2.5:8080;
}