Nginx反向代理、负载均衡功能
环境:
[root@db02 ~]# uname -a
Linux db02 2.6.-.el6.x86_64 # SMP Tue Mar :: UTC x86_64 x86_64 x86_64 GNU/Linux
[root@db02 ~]# cat /etc/redhat-release
CentOS release 6.9 (Final)
Nginx反向代理知识概念
反向代理与正向代理
此图来源: http://colabug.com/866451.html

反向代理
- 接收请求,完成请求处理
- 接收响应,返回告知响应
数据转发(正向代理)
- 接收请求,转发数据请求
- 接收响应,转发数据响应
nginx反向代理设置
nginx通过proxy_pass_http 配置代理站点,upstream实现负载均衡。
upstream模块: 类似于一个池塘,将nginx节点放置到池塘中
proxy_pass_http 模块: 用池塘里面的nginx节点,利用proxy进行调用
负载均衡的配置文件
worker_processes ;
events {
worker_connections ;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout ;
upstream server_pools {
server 10.0.0.7:;
server 10.0.0.8:;
server 10.0.0.9:;
}
server {
listen ;
server_name bbs.zxpo.com;
location / {
proxy_pass http://server_pools;
}
}
}
负载均衡参数介绍
|
upstream模块内参数 |
参数说明 |
|
server 10.0.10.8:80 |
负载均衡后面的RS配置,可以是IP或域名,如果端口不写,默认是80端口。高并发场景下,ip可换成域名,通过DN做负载均衡 |
|
weigth = 1 |
代表服务器的权重,默认值是1。权重数字越大表示接受的请求比例越大 |
|
max_ fails=5 |
Nginx尝试连接后端主机失败的次数,这个值是配合proxy_next_upstream、 fastcgi_next_upstream和memcached_next_upstream这三个参数来使用的。当nginx接收后端服务器返回这三个参数定义的状态码时,会将这个请求转发给正常工作的后端服务器,例如404、502、503、Max_ fails的默认值是1; 企业场景下建议 2-3次。根据业务需求去配置 |
|
fail_ timeout=10s |
在max_ fails定义的失败次数后,距离下次检查的间隔时间,默认是10s ;如果max_ fails是5 ,它就检测5次,如果5次都是502 ,那么,它就会根据fail_timeout的值,等待10s再去检查,还是只检查一次,如果持续502 ,在不重新加载 Nginx 配置的情况下,每隔 l0s都只检查一次。常规业务2~3秒比较合理,比如京东3 秒,蓝汛3秒,可根据业务需求去配置。 |
|
backup |
热备配置(RS芍点的高可用),当前面激活的 RS都失败后会自动后用热备RS这标志着这个服务器作为备份服务器,若主服务器全部宕机了,就会向它转发请求,注意:当负载调度算法为ip_hash时,后端服务器在负载均衡调度中的状态不能是weight和backup |
|
down |
这标志着服务器永远不可用,这个参数可配合 ip_hash使用;类似注释效果 |
参数在配置文件中的格式
upstream server_pools {
server 10.0.0.7 weight= max_fails= fail_timeout=10s;
server 10.0.0.8 weight= max_fails= fail_timeout=10s;
server 10.0.0.9 weight= max_fails= fail_timeout=10s;
}
Nginx反向代理、负载均衡功能的更多相关文章
- 十.nginx反向代理负载均衡服务实践部署
期中集群架构-第十章-nginx反向代理负载均衡章节章节====================================================================== 0 ...
- Nginx 反向代理 负载均衡 虚拟主机配置
Nginx 反向代理 负载均衡 虚拟主机配置 通过本章你将学会利用Nginx配置多台虚拟主机,清楚代理服务器的作用,区分正向代理和反向代理的区别,搭建使用Nginx反向搭理和负载均衡,了解Nginx常 ...
- Nginx 反向代理 负载均衡 虚拟主机
Nginx 反向代理 负载均衡 虚拟主机配置 通过本章你将学会利用Nginx配置多台虚拟主机,清楚代理服务器的作用,区分正向代理和反向代理的区别,搭建使用Nginx反向搭理和负载均衡,了解Nginx常 ...
- 【转】Nginx 反向代理 负载均衡 虚拟主机配置
原文:http://www.cnblogs.com/itdragon/p/8059000.html Nginx 反向代理 负载均衡 虚拟主机配置 通过本章你将学会利用Nginx配置多台虚拟主机,清楚代 ...
- Centos7.4 Nginx反向代理+负载均衡配置
Ningx是一款高性能的HTTP和反向代理服务器,配置起来也比较简单. 测试环境: 172.16.65.190 Nginx-反向代理 172.16.65.191 Ningx-Web 172.16.65 ...
- 项目实战2.2—nginx 反向代理负载均衡、动静分离和缓存的实现
实验一:实现反向代理负载均衡且动静分离 1.环境准备: 机器名称 IP配置 服务角色 备注 nginx VIP:172.17.11.11 反向代理服务器 开启代理功能 设置监控,调度 rs01 RIP ...
- 项目实战2.1—nginx 反向代理负载均衡、动静分离和缓存的实现
总项目流程图,详见 http://www.cnblogs.com/along21/p/8000812.html 实验一:实现反向代理负载均衡且动静分离 1.环境准备: 机器名称 IP配置 服务角色 备 ...
- 项目实战02:nginx 反向代理负载均衡、动静分离和缓存的实现
目录 实验一:实现反向代理负载均衡且动静分离 1.环境准备: 2.下载编译安装tengine 3.设置代理服务器的配置文件 4.启动tengine服务 5.开启后端的web服务 6.测试 实验二:ng ...
- 如何使用Weave以及Docker搭建Nginx反向代理/负载均衡服务器
Hi, 今天我们将会学习如何使用 Weave 和 Docker 搭建 Nginx 的反向代理/负载均衡服务器.Weave 可以创建一个虚拟网络将 Docker 容器彼此连接在一起,支持跨主机部署及自动 ...
- Centos 7.6配置nginx反向代理负载均衡集群
一,实验介绍 利用三台centos7虚拟机搭建简单的nginx反向代理负载集群, 三台虚拟机地址及功能介绍 192.168.2.76 nginx负载均衡器 192.168.2.82 web ...
随机推荐
- javascript 深拷贝对象
深拷贝polesResult,拷贝后sourceCopy成为与polesResult完全独立的对象 var sourceCopy=[].concat(JSON.parse(JSON.stringify ...
- luoguP2387 [NOI2014]魔法森林
https://www.luogu.org/problemnew/show/P2387 考虑先将所有边按 a 值排序,依次加入每一条边,如果这条边的两个端点 ( l, r ) 之间的简单路径中 b 的 ...
- 自动备份数据库crond
#!/bin/bash # export and backup the abgent_web database.sql mysqldump -uuser -ppassword ltden_db --s ...
- Python之路Python内置函数、zip()、max()、min()
Python之路Python内置函数.zip().max().min() 一.python内置函数 abs() 求绝对值 例子 print(abs(-2)) all() 把序列中每一个元素做布尔运算, ...
- Jenkins持续集成企业实战系列之Jenkins插件下载及邮件配置-----05
注:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任. 最初接触Jenkins也是由于公司需求,根据公司需求Java代码项目升级的.(公司是 ...
- Python3之sys模块
一.简介 sys模块用于提供对python解释器的相关操作. 二.常用函数 sys.argv 命令行参数List,第一个元素是程序本身路径 sys.modules 返回系统导入的模块字段,key是模块 ...
- 使用带参数的SQL语句向数据库中插入空值
private void button1_Click(object sender, EventArgs e) { string name = textBox1.Text; int age = Conv ...
- 1.2、Logistics Regression算法实践
1.1.Logistics Regression算法实践 有了上篇博客的理论准备后,接下来,我们用以及完成的函数,构建Logistics Regression分类器.我们利用线性可分的数据作为训练样 ...
- CentOS 7 开放防火墙端口 命令(转载)
CentOS 7 开放防火墙端口 命令 最近公司新的server要求用CentOS7, 发现以前CentOS 6 系列中的 iptables 相关命令不能用了,查了下,发现Centos 7使用fire ...
- HDU - 3033 滚动数组有坑
每层至少一个,滚动时要判上一层非法与否,所以每次都要memset #include<bits/stdc++.h> #define rep(i,j,k) for(int i=j;i<= ...