概述
web服务器,直接面向用户,往往要承载大量并发请求,单台服务器难以负荷,如果使用多台web服务器组成集群,前端使用nginx负载均衡,将请求分散的打到后端集群中,实现负载分发,提高系统性能。
nginx要实现负载均衡需要用到proxy_pass代理模块配置
nginx负载均衡与nginx代理是不同的,nginx代理只能代理一台服务器,而nginx负载均衡则是将客户端请求代理转发至一组upstream线程池。
nginx可以配置多台服务器,如果其中一台宕机,系统依旧可用。
配置方法
upstream配置策略
在conf文件夹中找到nginx.conf,通过vim打开编辑,在http代码块中,添加upstream线程池。
分配策略
1,weight权重
权重越高,分配到的几率越大。
2,ip_hash
按访问的IP的hash结果来分配请求
3,不做配置
轮询,按照时间顺序。
示例
upstream{ server 192.168.16.21:80 weight=1 server 192.168.16:98:80 weight=3 }
proxy_pass模块配置
在nginx.conf中,找到http中的server代码块,在location中添加proxy_pass参数。
server { listen 80; server_name 192.168.119.10; location / { proxy_pass http://www.baibaidu.com; } }