负载均衡nginx tomcat

chmod 777 local
传输tomcat到local文件夹下
tar vxzf apache-tomcat-8.5.78.tar.gz
rm -rf apache-tomcat-8.5.78.tar.gz
cd apache-tomcat-8.5.78/
cd webapps/
cd ROOT/
vim index.jsp  修改body node01节点
编辑完成后返回 bin目录
输入./catalina.sh run
在网址输入192.168.1.7:8080就能访问刚才的jsp页面

同样操作给node02也将tomcat传输到local文件夹下
将index.jsp改为node02
此时将nginx 里

 

 

---------------------上面默认时随机还是轮询?--------------------------------

 

-------------------------------------下面是权重----------------------------------

 

 

 

 

 反向代理配合upstream使用

upstream httpds {
    server 192.168.1.7:8080;
    server 192.168.1.17:8800;
}
weight(权重)

指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。

upstream httpds {
    server 127.0.0.1:8050       weight=10 down;
    server 127.0.0.1:8060       weight=1;
     server 127.0.0.1:8060      weight=1 backup;
}
down:表示当前的server暂时不参与负载
weight:默认为1.weight越大,负载的权重就越大。
backup: 其它所有的非backup机器down或者忙的时候,请求backup机器。
max_conns

可以根据服务的好坏来设置最大连接数,防止挂掉,比如1000,我们可以设置800

upstream httpds {
    server 127.0.0.1:8050    weight=5  max_conns=800;
    server 127.0.0.1:8060    weight=1;
}
------------
max_fails、 fail_timeout

max_fails:失败多少次 认为主机已挂掉则,踢出,公司资源少的话一般设置2~3次,多的话设置1次

max_fails=3 fail_timeout=30s代表在30秒内请求某一应用失败3次,认为该应用宕机,后等待30秒,这期间内不会再把新请求发送到宕机应用,
而是直接发到正常的那一台,时间到后再有请求进来继续尝试连接宕机应用且仅尝试1次,如果还是失败,则继续等待30秒...以此循环,直到恢复。 upstream httpds { server
127.0.0.1:8050 weight=1 max_fails=1 fail_timeout=20; server 127.0.0.1:8060 weight=1; }

 

健康检查模块

配置一个status的location

location /status {
            check_status;
 
        }

在upstream配置如下

check interval=3000 rise=2 fall=5 timeout=1000 type=http;
check_http_send "HEAD / HTTP/1.0\r\n\r\n";
check_http_expect_alive http_2xx http_3xx;

 

<%@ page import="java.util.*" contentType="text/html; charset=UTF-8"%> 
<h1>node01</h1>
<%=session.getId()%>
两个节点分别getsession 是不同的

 

posted @ 2022-04-15 14:32  花心大萝卜li  阅读(33)  评论(0)    收藏  举报