内容简介:对上游(比如tomcat)服务使用 keepalive 长连接以ip为基础, 即使上游服务端挂了, 也会一直访问一台服务器
反向代理
负载均衡策略 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讲笔记(二)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- Android 学习笔记核心篇
- nginx 核心知识100讲笔记(一)
- nginx 核心知识100讲笔记(三)
- elasticsearch学习笔记(三)——Elasticsearch的核心概念
- 《DeepLearning.ai 深度学习核心笔记》发布,黄海广博士整理
- 【愣锤笔记】嗯,真香!精简ES函数式编程核心概念
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。