nginx 负载均衡

文章目录

      • 为什么搞nginx负载均衡?
      • 负载均衡策略
      • 负载均衡备份与宕机

为什么搞nginx负载均衡?

因为能够提升项目的稳定性以及性能

如何实现:

在宿主机里home目录下建两个tomcat1和tomcat2目录,然后复制我们创好的tomcat容器里conf,webapps到宿主机

[root@localhost ~]# docker cp a316209707f2:/usr/local/tomcat/conf /home/tomcat1
[root@localhost ~]# docker cp a316209707f2:/usr/local/tomcat/webapps /home/tomcat1
[root@localhost ~]# docker cp a316209707f2:/usr/local/tomcat/conf /home/tomcat2
[root@localhost ~]# docker cp a316209707f2:/usr/local/tomcat/webapps /home/tomcat2

然后对tomcat1 目录里webapps下的index文件进行修改
把其中body内容去掉 只留8080
nginx 负载均衡_第1张图片
同样tomcat2目录webapps下的index修改 只留下9090
同时修改tomcat2目录conf下的server.xml 其中8080端口改成9090
nginx 负载均衡_第2张图片
方便后面观察效果
改完后重启tomcat容器
查看其具体ip

docker inspect  容器id

tomcat1 :172.17.0.3
tomcat2 :172.17.0.4
nginx:172.17.0.2

修改nginx.conf指定具体代理的目标服务器
nginx 负载均衡_第3张图片
修改default.conf
server.server_name(用户访问URL),server.location指定跳转到目标服务器
nginx 负载均衡_第4张图片
在这里插入图片描述
在这里插入图片描述

负载均衡策略

1.轮询(默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。
2、指定权重

指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。
nginx 负载均衡_第5张图片
3、IP绑定 ip_hash

每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。
nginx 负载均衡_第6张图片

least_conn最少连接
web请求会被分发到连接数最少的服务器上;
在这里插入图片描述

负载均衡备份与宕机

备份 backup配置;
其他非backup机器挂掉后,才会请求backup机器;
在这里插入图片描述
宕机 down配置;
配置down的服务器不参与负载均衡;这样down所标记的服务器可以安心的升级了;
在这里插入图片描述

你可能感兴趣的:(nginx)