zoukankan      html  css  js  c++  java
  • nginx负载均衡

    1 nginx的负载均衡是由upstream模块提供的

    http {
    
        # ... 省略其它配置
    
        upstream tomcats {
            server 192.168.0.100:8080;
            server 192.168.0.101:8080;
            server example.com:8080;
        }
    
        server {
            listen 80;
    
            location / {
                proxy_pass http://tomcats;
            }
        }
    
        # ... 省略其它配置
    }

    proxy_pass http://tomcats:表示将所有请求转发到tomcats服务器组中配置的某一台服务器上。

    2 nginx请求分配的五种方式

    2.1 轮询

    每个请求按照时间顺序逐一分配给后端服务器。

    up_stream backend {

        server 192.168.1.10;

        server 192.168.1.11;

    }

    2.2 指定权重

    up_stream backend {

        server 192.168.1.10 weight=1;

        server 192.168.1.11 weight=2;

    }

    权重越大,分配的请求就越频繁。

    2.3 ip_hash

    按照ip hash的结果分配,每个请求固定一个后端服务器。解决session不能跨服务器的问题。

    up_stream backend {

        ip_hash;

        server 192.168.1.10;

        server 192.168.1.11;

    }

    2.4 fair

    按照请求的响应时间来分配。

    up_stream backend {

        fair;

        server 192.168.1.10;

        server 192.168.1.11;

    }

    2.5 url_hash

    按照url的hash来指定后端服务器,同一个url对应一个后端服务器,如果后端是缓存服务器,将很有效。

    upstream tomcats {
        server 192.168.0.100:8080;
        server 192.168.0.101:8080;
        server 192.168.0.102:8080;
        hash $request_uri;
    }
  • 相关阅读:
    线性时间选择
    ios理解 Pro Mutlithreading and Memory Management for iOS and OS X with ARC, Grand Central Dispatch, and Blocks
    ef
    c# 采集 获取网页数据内容 一会超时的问题
    entity4.1
    逐渐约束
    entity4.1
    ObjectContext.Refresh
    使用内存表
    MVCdropdownlist
  • 原文地址:https://www.cnblogs.com/hustdc/p/8579433.html
Copyright © 2011-2022 走看看