Nginx实现高可用之Nginx集群负载均衡 Nginx构建Tomcat集群 upstream 指令参数

6 篇文章 0 订阅
3 篇文章 0 订阅

一、四层负载均衡
1.F5硬负载均衡
2.LVS四层负载均衡
3.Haproxy四层负载均衡
4.Nginx四层负载均衡

二、七层负载均衡
1.Nginx七层负载均衡
2.Haproxy七层负载均衡
3.apache七层负载均衡

七层负载均衡基本处理http协议的用于web服务器如tomcat,四层负载均衡主要处理tcp,udp协议。

三、DNS地域负载均衡
根据服务器ip,就近原则,提高访问速度

四、Nginx构建Tomcat集群
注:我采用的是虚拟机
1.
nginx服务器地址: 192.168.152.131
第一台tomcat服务器地址:192.168.152.132
第二台tomcat服务器地址:192.168.152.130
第三台tomcat服务器地址:192.168.152.133
2.在nginx的配置文件加入以下配置

upstream tomcats {
        server 192.168.152.133:8080;
        server 192.168.152.130:8080;
        server 192.168.152.132:8080;
}

server {
        listen          80;
        server_name     192.168.152.131;

        location / {
            proxy_pass http://tomcats;
        }
}

3.启动nginx服务器访问:192.168.152.131:80即可访问到tomcat服务器

五、负载均衡-轮询
1.nginx默认测虐(硬件配置一样的条件下)

六、负载均衡-加权轮询
1.硬件越好,处理请求越多,通过权重配置。
weight数值越小,权重越低

upstream tomcats {
        server 192.168.152.133:8080 weight=1;
        server 192.168.152.130:8080 weight=2;
        server 192.168.152.132:8080 weight=5;
}
server {
        listen          80;
        server_name     192.168.152.131;

        location / {
            proxy_pass http://tomcats;
        }
}

七、upstream 指令参数
1.max_conns:用于限制一台服务器最大连接数(限流)

upstream tomcats {
        server 192.168.152.133:8080 max_conns=2;
        server 192.168.152.130:8080 max_conns=2;
        server 192.168.152.132:8080 max_conns=2;
}

2.slow_start:缓慢启动

upstream tomcats {
        server 192.168.152.133:8080 weight=6 slow_start=60s;
        server 192.168.152.130:8080 weight=2;
        server 192.168.152.132:8080 weight=2;
}

3.down:标识为服务器不可用的状态

upstream tomcats {
        server 192.168.152.133:8080 down;
        server 192.168.152.130:8080 ;
        server 192.168.152.132:8080 ;
}

4.backup:表示该服务器为备用机,待其他服务器宕机以后在使用

upstream tomcats {
        server 192.168.152.133:8080 backup;
        server 192.168.152.130:8080 ;
        server 192.168.152.132:8080 ;
}

5.max_fails
6.fail_timeout

八、使用keepalive提高吞吐量

keepalive :长连接配置

upstream tomcats {
        server 192.168.152.133:8080;
        server 192.168.152.130:8080 ;
        server 192.168.152.132:8080 ;
        keepalive	32;
}
server {
        listen          80;
        server_name     192.168.152.131;
        location / {
            proxy_pass http://tomcats;
            proxy_http_version 1.1;
            proxy_set_header Connection "";
        }
}

九、负载均衡-ip_hash
1.hash算法:hash(ip)% node_counts=index
在这里插入图片描述

upstream tomcats {
	    ip_hash;
        server 192.168.152.133:8080;
        server 192.168.152.130:8080 ;
        server 192.168.152.132:8080 ;
}
server {
        listen          80;
        server_name     192.168.152.131;
        
        location / {
            proxy_pass http://tomcats;
        }
}

hash算法带来的问题:当服务器增加或者减少时,会重新进行计算,那么用户在之前服务器的会话会全部丢失并且相应的缓存也会请求不到,照成用户请求时间增大。如何解决呢,采用一致性哈希算法

十、负载均衡 - url_hash
在这里插入图片描述

upstream tomcats {
	    hash $request_uri;
        server 192.168.152.133:8080;
        server 192.168.152.130:8080 ;
        server 192.168.152.132:8080 ;
}

十一、负载均衡 - least_conn
1.哪台服务器的连接数少就访问哪台

upstream tomcats {
	    least_conn;
        server 192.168.152.133:8080;
        server 192.168.152.130:8080 ;
        server 192.168.152.132:8080 ;
}
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值