Nginx七层反向代理和负载均衡
1.介绍 1.1 Nginx不仅是一个出色的 web软件,其七层代理和负载均衡也是相当出色。 Nginx做前端代理,当用户请求服务时,可以根据 url进行判断,然后分配到不同的后台 webserver上。 1.2 Nginx的负载均衡实现原理:首先在 http模块中配置使用 upstream模块定义后台的 web server的池子,名为 proxy-web,在池子中我们可以添加多台后台 webserver,其中状态检查、调度算法都是在池子中配置;然后在 serverr模块中定义虚拟主机,但是这个虚拟主机不指定自己的 web目录站点,它将使用 location匹配 url然后转发到上面定义好的 web池子中,最后根据调度策略再转发到后台 web server上 2.负载均衡配置项的介绍 2.1 upstream调度算法介绍 ( 1) rr轮询(默认) 按照请求顺序分配到每个 RS,和 lvs中的 rr算法一样,如果 RS宕机,会自动剔除,默认情况下只检测 80端口,如果 RS报 402、 403、 503、 504错误,会直接返回给客户端。 ( 2) weight(权重) 在 rr的基础上再加上权重(默认是 rr+weight),权重轮询和访问成正比,值越大分配的越多,可以根据服务器的配置设置权重,可以解决服务器性能不均进行请求分配的问题 ( 3) ip_hash 解决动态网页