Nginx配置负载均衡

        之前做项目都是在一台服务器上部署,向用户提供服务,随着用户的增多,和使用系统的频繁,用户在使用过程中感觉越来越卡,服务器的带宽和CPU/内存也越来越高,这时候常规的做法是升级带宽、升级基础配置,但是一台服务器就是配置再高,也架不住访问的次数多,武林高手也难敌千军万马,所以有了负载均衡,简单说就是将访问的流量分出去,让其他的服务器来分担压力,这样当访问量越来越高时,只需要增加一般配置的服务器,整理成本计算下来要比,只增加单台服务器配置的,要节省许多。接下来记录一下如何配置负载均衡,使用的环境是linux的宝塔控制面板

一、安装Nginx

因为我这里使用的是宝塔控制面板,操作较为傻瓜式,其他的linux可以看菜鸟的教程

Nginx配置负载均衡_第1张图片
安装Nginx后的页面

二、新建站点

Nginx配置负载均衡_第2张图片
新建站点
Nginx配置负载均衡_第3张图片
修改站点

三、解析域名

解析一个域名到服务器的ip上,没什么说的

四、配置后端服务器

按照上面第二步,在另外一台服务器上做相同操作,需要注意的是,如果两台服务器在同一个区中,则可以填写内网ip访问

五、配置Nginx负载均衡

重点来了,打开Nginx开始配置了

Nginx配置负载均衡_第4张图片
打开Nginx配置文件

在http节点中找到server节点,在他之上新建upstream节点,后面跟一个名称,可以自定义

Nginx配置负载均衡_第5张图片
新建upstream节点

上面我们将一个站点,分别配置到了两台服务器上,接下来需要将两台服务器的添加到服务器列表中,等待访问

Nginx配置负载均衡_第6张图片
添加服务器

上图中的ip_hash的意思是:当A用户第一次访问时到了第一台服务器,则在一定时间内,再次访问时,依然分发到第一台服务器,保证用户的登录状态和其他信息。

weight的含义是:分发权重,当指定的数值越大,则分发到该服务器的比例越大,但是当分发算法为ip_hash时,weight将不起作用。

分发算法有:rr轮询、wrr权重轮询、ip_hash静态调度、fair动态调度、least_conn连接数调度

服务器列表到这里就配置完了,接下来配置监听域名,并分发到服务器列表

Nginx配置负载均衡_第7张图片
配置server

到这里就配置完毕了,接下来为了看到效果,将两台服务器上的程序修改成不同的内容

六、访问

修改完毕后,在浏览器上输入解析的域名one.xxx.com

Nginx配置负载均衡_第8张图片
第二台服务器
Nginx配置负载均衡_第9张图片
第一台服务器

访问时记得要切换一下自己的公网ip,我这里是使用代理,大家可以用电脑和手机同时看也是可以的。

以上就实现了基本的负载均衡,关于怎么配置多站点,只需将http节点中的server多写几个即可。

你可能感兴趣的:(Nginx配置负载均衡)