• nginx负载均衡设置


    在nginx的配置文件【./conf/nginx.conf】中加入:

    upstream test.balance123.com {

    server 192.168.1.223:80;
    server 192.168.1.101:8888;

    }
    server {
    listen 80;
    location /{
    proxy_pass http://test.balance123.com;
    proxy_set_header X-Real-IP $remote_addr;
    client_max_body_size 100m;

      proxy_read_timeout 200;//用于代理超时控制
    }
    }

    默认轮循。

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

    2、加权轮询

    根据请求按一定比例访问后端服务器,主要用于服务资源分配不均的情况。

    upstream test.balance123.com {

    server 192.168.1.223:80 weight=10;
    server 192.168.1.101:8888 weight=5;

    }

    eg:上面的配置使得223的请求量是101的2倍

    3、ip_hash

    根据请求ip的hash结果分配后端服务器,这样每个访客固定访问一个后端服务器,可以解决session的问题。
    例如:
    upstream resinserver{
    ip_hash;

    server 192.168.1.223:80;

    server 192.168.1.101:8888;

    }

    4,least_conn

    我们知道轮询算法是把请求平均的转发给各个后端,使它们的负载大致相同。

    这有个前提,就是每个请求所占用的后端时间要差不多,如果有些请求占用的时间很长,会导致其所在的后端

    负载较高。在这种场景下,把请求转发给连接数较少的后端,能够达到更好的负载均衡效果,这就是least_conn算法。

     least_conn算法很简单,首选遍历后端集群,比较每个后端的conns/weight,选取该值最小的后端。

    如果有多个后端的conns/weight值同为最小的,那么对它们采用加权轮询算法。

    upstream resinserver{
    least_conn;

    server 192.168.1.223:80;

    server 192.168.1.101:8888;

    }

    Note:Nginx的反向代理在配置上与负载均衡一致;只不过当后端服务器为一台时称为反向代理,有多台时称为负载均衡。

  • 相关阅读:
    koa2 + webpack 热更新
    koa2在node6中如何运行
    浅拷贝和深拷贝的理解和实现
    angular2多组件通信流程图
    angular2 表单的理解
    ssh-add Could not open a connection to your authentication agent.
    outlook同步异常
    ctrl+c ctrl+d ctrl+z 的区别和使用场景
    grep 详解
    mysql 事务隔离级别 详解
  • 原文地址:https://www.cnblogs.com/itdev/p/7044129.html
Copyright © 2020-2023  润新知