nginx的配置实例三(负载均衡)

2021/12/15 7:22:32

本文主要是介绍nginx的配置实例三(负载均衡),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

目标构思图:

 目标实现:拟访问一个网站http://192.168.5.199:8080/edu/8080.html然后将他们平均分配到服务器的8080、8081的端口中去,以达到负载均衡的效果

准备工作:(一)准备两台tomcat服务器,一个是8080端口一个是8081端口

                  (二)在两台tomcat的webapps的目录里面,都新建一个edu的文件夹,然后在里面统一新建名称一样的html测试文件,为了测试效果,两台服务器的html文件内容不要一样,8080端口的就写8080端口,8081就写8081

接下来测试一下!!!

8080端口的服务器

8081端口的服务器

 

1、准备工作完成之后 就可以配置nginx的负载均衡了

在http模块添加以下负载均衡语句

upstream myserver {                                                          #起一个服务名为myserver
        server 192.168.5.199:8080;                                       #添加负载均衡添加服务列表
        server 192.168.5.199:8081;                                       #添加负载均衡添加服务列表

在server监听的80端口添加以下语句

  location   / {

 proxy_pass http://myserver;                                              #添加刚才起的服务名字myserver

}

1.1、重启服务器的配置文件

cd /usr/local/nginx/sbin/                                                      #切换到sbin目录下

./nginx -s reload                                                                  #重启nginx的配置文件

1.2、测试效果!正确的效果就是现在是8080,在刷新一下就是8081了,这就实现了我们负载均衡的效果,就是合理的分配资源,给8080端口分配一个然后给8081端口分配一个,这就是nginx的负载均衡的效果!

刷新一下变成了8081

1.3、nginx分配服务器策略

第一种  轮询(默认)

每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动删除

第二种 weight

weight代表权重,默认为1,权重越高被分配的客户端越多

第三种 hash

每个请求按访问的ip的hash结果分配,这样每个访问固定访问一个后端服务器,可以解决session的问题,例如你第一次访问的是8080端口的话那你下次访问还是8080端口,如果你第一次访问的是8081端口的话那你下次访问的也是8081端口

 upstream myserver {
        ip_hash
        server 192.168.5.199:8080;
        server 192.168.5.199:8081;

}

第四种  fair(第三方)

按照后端服务器的响应时间来分配请求,响应时间短的优先分配


 

 

 



这篇关于nginx的配置实例三(负载均衡)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程