环境:

两台后端web,一台代理服务器

web1:eth0:192.168.2.100/24   httpd做一个web

web2:eth0:192.168.2.200/24   httpd做一个web

proxy:eth0:192.168.2.5/24

代理服务器有什么好处?

1.隐藏后端真实服务器信,有一定安全作用.

2.负载调度器,实现负载均衡的作用.

3.健康检查,实现状态检查,自动添加剔除集群.

在代理服务器nginx conf配置中在server之上使用upstream来定义后端集群

http{

......................

  upstream webproxy {          //定义集群名字叫proxy
    server 192.168.2.100:80;    //后端服务器1IP+PORT
    server 192.168.2.200:80;    //后端服务器2IP+PORT
  }

  server {

    listen 80;

    server_name localhost;

    location / {

       proxy_pass http://webproxy;

    }

  }

  server {

  }

}

重启nginx重新载入配置文件初步测试:

看到调度器自动转到web1 和 web2 且使用轮询算法.

在nginx upstream中可以指定后端服务器权重等参数.

upstream webproxy {          //定义集群名字叫proxy
    server 192.168.2.100:80 weight=1 max_fails=1 fail_timeout=30;;    
    server 192.168.2.200:80 weight=2 max_fails=2 fail_timeout=30;;

    server 192.168.2.201:80 down;

}

其中参数weight可以设置后台服务器的权重,max_fails可以设置后台服务器的失败次数,fail_timeout可以设置后台服务器的失败超时时间,down标记服务器已关机,不再参与集群调度.

wigth默认值为1,fail_timeout单位为秒.

在nginx upstream中还可以指定算法

upstream webproxy {          //定义集群名字叫proxy

    ip_hash;
    server 192.168.2.100:80 weight=1 max_fails=1 fail_timeout=30;;    
    server 192.168.2.200:80 weight=2 max_fails=2 fail_timeout=30;;

    server 192.168.2.201:80 down;

}

nginx目前支持3种调度算法:

轮询(默认):逐一循环调度

weight:指定轮询几率,权重值与访问率成正比 2 比 1多一倍的访问量

ip_hash:根据客户端IP分配固定的后端服务器

nginx篇中级用法之反向代理(七层调度)的更多相关文章

  1. Centos 7 上使用nginx为Node.js配置反向代理时错误:(13: Permission denied) while connecting to upstream

    错误来源:Centos 7 上使用nginx为Node.js配置反向代理时产生(13: Permission denied) while connecting to upstream的错误 nginx ...

  2. Nginx服务器部署 负载均衡 反向代理

    Nginx服务器部署负载均衡反向代理 LVS Nginx HAProxy的优缺点 三种负载均衡器的优缺点说明如下: LVS的优点: 1.抗负载能力强.工作在第4层仅作分发之用,没有流量的产生,这个特点 ...

  3. 使用Nginx对.NetCore站点进行反向代理

    前言 之前的博客我已经在Linux上部署好了.NetCore站点且通过Supervisor对站点进行了进程守护,同时也安装好了Nginx.Nginx的用处非常大,还是简单说下,它最大的功能就是方便我们 ...

  4. nginx配置虚拟主机、反向代理和负载均衡

    为了实现这个功能,需要修改nginx的配置文件,将nginx.conf清理一下,使结构更清晰. worker_processes ; events { worker_connections ; } h ...

  5. Nginx服务器的使用与反向代理负载均衡

    目录 Nginx服务器 一:什么是Nginx? 什么是Nginx - Nginx与其他服努器的性能比较 二:如何在Linux中搭建Nginx服务器? 常见的错误 三:Nginx的反向代理和负载均衡 什 ...

  6. Nginx 之六: Nginx服务器的正向及反向代理功能

    一:Nginx作为正向代理服务器: 1.正向代理:代理(proxy)服务也可以称为是正向代理,指的是将服务器部署在公司的网关,代理公司内部员工上外网的请求,可以起到一定的安全作用和管理限制作用,正向代 ...

  7. nginx服务器开启缓存、反向代理

    一.反向代理配置 1.反向代理服务器配置如下 反向代理就是需要这一行proxy_pass来完成.当我们要访问后端web服务器的时候,我们只需要访问代理服务器就可以了,此时代理服务器就充当后端web服务 ...

  8. Nginx HTTP负载均衡和反向代理的配置与优化

    一.什么是负载均衡和反向代理 1.负载均衡 负载均衡是由多台服务器以对称的方式组成一个服务器集合,每台服务器具有等价的地位,都可以单独提供服务而无需其他服务的辅助.通过某种负载分担技术,将外部发送来的 ...

  9. 前nginx后Apache+Node反向代理

    前几天一直在被一个问题困扰,机器上跑的站点太多了,Apache上面有十几个,NodeJS的也有一堆,记端口号都要烦死,于是萌生了使用反向代理的想法.出发点貌似太low了,完全不是出于负载均衡.高并发什 ...

随机推荐

  1. ping本地局域网

    #!/bin/bash for i in `seq 1 254` do ping -c 1 192.168.192.$i > /dev/null if [ $? -eq 0 ];then ech ...

  2. mysql 生成数据字典sql语句

    SELECT TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME, COLUMN_TYPE, COLUMN_COMMENT FROM information_schema. C ...

  3. 【JavaScript】 直接下载保存文件

    //直接下载保存文件 function Download(filePath) { // 如果中间IFRAME不存在,则添加 if (!document.getElementById("_SA ...

  4. 疑似网络抖动引起的RAC单节点宕机

  5. net core WebApi——使用NPOI导入导出操作

    目录 前言 NPOI 测试 小结 @ 前言 时间过得好快,在之前升级到3.0之后,就感觉好久没再动过啥东西了,之前有问到Swagger的中文汉化,虽说我觉得这种操作的意义不是太大,也是多少鼓捣了下,其 ...

  6. java架构之路-(Redis专题)Redis的高性能和持久化

    上次我们简单的说了一下我们的redis的安装和使用,这次我们来说说redis为什么那么快和持久化数据 在我们现有的redis中(5.0.*之前的版本),Redis都是单线程的,那么单线程的Redis为 ...

  7. Vue-CLI项目vuex仓库

    0901自我总结 Vue-CLI项目vuex仓库 一.概念 vuex仓库是vue全局的数据仓库,好比一个单例,在任何组件中通过this.$store来共享这个仓库中的数据,完成跨组件间的信息交互. v ...

  8. App元素定位

    1.元素定位(采用Appium-desktop自带的工具) 1.1将初始化参数复制进去校验json格式正确且保存后,点击start session 初始化参数来源如下: # 定义启动设备需要的参数 d ...

  9. [Luogu3932] 浮游大陆的68号岛

    题目背景 大样例下发链接: https://pan.baidu.com/s/1nuVpRS1 密码: sfxg 浮游大陆的68号岛,位于浮游大陆的边境地带.平时很少有人造访. 岛上被浓厚的森林覆盖. ...

  10. php反序列化漏洞复现过程

    PHP反序列化漏洞复现 测试代码 我们运行以上代码文件,来证明函数被调用: 应为没有创建对象,所以构造函数__construct()不会被调用,但是__wakeup()跟__destruct()函数都 ...