Nginx核心知识100讲

Posted it-chen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx核心知识100讲相关的知识,希望对你有一定的参考价值。

反向代理

负载均衡策略 round-bobin 算法, 依次轮训, 挨个进行

  • weight 权重, 默认1
  • max_conns server的最大并发连接数, 仅作用于单worker
  • max_fails 在 fail_timeout 时间段内, 最大的失败次数. 当达到最大失败时候, 会在 fail_timeout 秒内这台server 不允许再次被选中
  • fail_timeout 单位时间秒, 默认10秒. 指定一段时间内, 最大是吧次数 max_fails. 到达 max_fails后, 该server不能访问的时间

对上游(比如tomcat)服务使用 keepalive 长连接

proxy_http_version 1.1; # 1.0 不支持长链接, 所以重置下, 为1.1
proxy_set_header Connection "";

upstream rrups {
    server 127.0.0.1:8011 weight=2 max_conns=2 max_fails=2 fail_timeout=5;
    server 127.0.0.1:8012;
    keepalive 32;
}

server {
    server_name rrups.liuhonghe.me;
    error_log myerror.log info;

    location /{
        proxy_pass http://rrups;
        proxy_http_version 1.1;
        proxy_set_header Connection "";
    }
}

 


负载均衡策略 ip_hash 算法

以ip为基础, 即使上游服务端挂了, 也会一直访问一台服务器

log_format  varups  ‘$upstream_addr $upstream_connect_time $upstream_header_time $upstream_response_time ‘
                        ‘$upstream_response_length $upstream_bytes_received ‘
                        ‘$upstream_status $upstream_http_server $upstream_cache_status‘;

upstream iphashups {
    #ip_hash;
    # curl -H ‘X-Forwarded-for: 192.168.1.100 iphash.liuhonghe.me?username=abcdefg‘
    hash user_$arg_username; # 使用特定字符串作为hash, 除非username更改, 否则不会更改
    server 127.0.0.1:8011 weight=2 max_conns=2 max_fails=2 fail_timeout=5; # 使用ip_hash 后权重不生效
    server 127.0.0.1:8012 weight=1;
}

server {
    set_real_ip_from  116.62.160.193;
    real_ip_recursive on;
    real_ip_header X-Forwarded-For;
    server_name iphash.liuhonghe.me;
    error_log myerror.log info;
    access_log logs/upstream_access.log varups;

    location /{
        proxy_pass http://iphashups;
        proxy_http_version 1.1;
            proxy_set_header Connection "";
    }
}

 

 


以上所述就是小编给大家介绍的《nginx 核心知识100讲笔记(二)》,希望对大家有所帮助

以上是关于Nginx核心知识100讲的主要内容,如果未能解决你的问题,请参考以下文章

nginx核心参数

《算法零基础100讲》(第61讲) 前缀和 二维前缀和

片段和活动之间的核心区别是啥?哪些代码可以写成片段?

《Linux内核 核心知识全解析(完)》

CSP核心代码片段记录

深度学习核心技术精讲100篇(六十五)-万字长文从ReLU到GELU通讲神经网络激活函数