负载均衡简单理解,四层和七层的区别

负载均衡:

主要作用:流量分发、请求平均、降低单例压力

其次:隐藏后端真实服务器、做七层负载均衡时可以屏蔽非法请求

 

分类:常见的一般有以下两种

四层负载均衡(tcp):传输层的负载均衡,但是是在三层(网络层)负载均衡基础之上的,基于IP+port接收和转发请求

七层的负载均衡(http):根据虚拟的url或ip,主机接收请求,再转向反向代理对应的处理服务器

 

实现方式:

①硬件:F5的BIG-IP,可做四层和七层

②软件:四层:lvs、nginx、Haproxy

    七层:nginx、haproxy

 

四层和七层到底有什么区别:

四层:基于IP+port、握手一次、性能高(不解析内容,只做转发)、安全性低,无法识别Ddos攻击

七层:基于url或主机IP、握手2次、比较复杂、安全性高(可以防御洪水攻击)、支持会话保、图片压缩、防盗链等

根本上来说:四层时Director转发请求、七层中Director相当于代理

配置:http段里配置upstream模块,server虚拟主机段里的location配置反向代理,转发到upstream中server服务器,记得加上header头信息,把客户端IP发给后端服务器。要不然用户访问日志就废了,分析不了用户信息!

可以查看web服务器的访问日志进行验证

 

问:负载均衡实现之后,后端服务器获取到的IP时负载均衡服务器的,怎么办?

答:前面负载均衡服务器已经设置了把客户端IP发给后端RS。接下里,nginx有个ngx_http_realip_module提供的set_real_ip_from语法,nginx编译安装的时候带上此参数即可,代表从哪儿来源的IP,需要识别真实客户端IP

 

大写的注:如果遇到session不一致问题,可通过共享session解决,比如使用redis、memcached这样的缓存软件

 

 

posted @ 2019-11-15 15:56  羚角马  阅读(983)  评论(0编辑  收藏  举报