zoukankan      html  css  js  c++  java
  • Springboot2.x+Nginx测试负载均衡

    1:之前只是用nginx调用了boot_8044这一个服务,这次新建一个boot_8055服务,并在linux上启动;

    两个boot我都是放在 /myprojects 目录下的(自定义,能启动就行)

     

    2:切换到 /myprojects/nginx 目录下,修改nginx.conf中的某些配置,增加服务器组 upstream

    保存修改后,重启一下nginx服务;

    3:再次在windows下访问linux的nginx服务

    访问nginx时可以看到浏览器发出了两个servlet 请求

    而在两个boot页面中显示boot_8044收到一个请求,boot_8055收到一个请求

    如有需要可以看看boot源码;

    此时nginx就同时代理了boot_8044、boot_8055两个服务的请求,由于没有配置权重等,默认轮询;

    下面可以来玩玩nginx的权重 等相关配置了;

    4:为 upstream 中的各个boot 分别按需添加相关属性

    1)weight : 权重,值越大,分配的概率越大,默认为1;注意weight=1才是正确写法,weight = 1多了空格,启动nginx或报错;

    分配概率=单weight/总weight,如8044的概率为:1/1+2 = 1/3 ;

    2)max_fails:最大失败次数,当某服务请求失败达到设定的次数之后,在fail_timeout设定的时间内将不再为该服务分配请求;

    如果设置为0,Nginx会将这台Server置为永久无效状态,然后将请求发给定义了proxy_next_upstream, fastcgi_next_upstream, uwsgi_next_upstream, scgi_next_upstream, and memcached_next_upstream指令来处理这次错误的请求。

    3)fail_timeout:单位秒,默认值为10;当某服务处理请求失败达到max_fails的设定后会触发改配置;

    4)backup:备机,当其他服务都down掉(不可用)时,会把请求交给此机处理;

    如图,我把8055设置成备机后,只剩8044还能正常工作,8044down掉后会唤醒8055,可自行测试;

    5)down:标识某服务不可用,不再处理任何请求

    如图,8044设置为down之后,不再处理请求,8055down掉nginx的请求将再无法处理;

    6)max_conns:给某服务设置的最大连接数,当达到上限时nginx不再分配请求给改server,默认值为0,代表不限制;版本大于1.5.9才可使用;

    7)ip_hash:使来自同一客户端的请求始终分发在同一server上,除非此server不可用(down掉);

    ip_hash会为每个客户端分配一个具体hash值,用来找到上一次访问的server;

    客户端的ip_hash值为ipv4的前三个8位字节或ipv6的的地址;

    好处:可以保证浏览器端的登录状态

     

    如图,我在源码中采用了session登录,使用ip_hash可以正确返回登录状态,而若我不适用ip_hash则无法判定用户的登录状态(能访问是因为我在源码中没加登录判断);

    所以之前看不到具体的用户名就是这个原因导致;

    坏处:当用户处于登录成功状态时(假设正在由8055处理所有请求),8055突然down掉了,用户就被迫下线了(可自行修改源码测试~);

    8)slow_start:慢启动,默认为0,禁用此指令;作用是设置server从权重为0恢复到标准值权重的时间,或不健康的服务器恢复健康的时间,

    或者服务器在一段时间被认为不可用后变得可用时间;不可与hash和ip_hash一起使用

    这个估计是bug吗?该指令在1.8.1中居然不可用~~~望解答

    nginx这个东西还是有很多坑啊,需多多注意~~~~

  • 相关阅读:
    51nod 1494 选举拉票 | 线段树
    51nod 1295 XOR key | 可持久化Trie树
    Codeforces 438D (今日gg模拟第二题) | 线段树 考察时间复杂度的计算 -_-|||
    51nod 1563 坐标轴上的最大团(今日gg模拟第一题) | 线段覆盖 贪心 思维题
    良心的可持久化线段树教程
    51nod 1593 公园晨跑 | ST表(线段树?)思维题
    51nod 1595 回文度 | 马拉车Manacher DP
    51nod 1522 上下序列
    胡小兔的OI日志3 完结版
    51nod 1510 最小化序列 | DP 贪心
  • 原文地址:https://www.cnblogs.com/zgq7/p/10609725.html
Copyright © 2011-2022 走看看