Nginx 反向代理与负载均衡

2020-01-03  本文已影响0人  梁坤同学

反向代理

反向代理(Reverse Proxy)方式是指以代理服务器来接受 internet 上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给 internet 上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。

正向代理是针对你的客户端,如下图

反向代理.png

反向代理是针对服务器,如下图:

正向代理.png

配置反向代理

upstream tomcat-portal {
  server 192.168.00.000:8080;
}
server {
  listen 80;
  server_name www.example.com;
  location / {
    proxy_pass http://tomcat-portal;
    index index.html;
  }
}

负载均衡

负载均衡就是分摊到多个操作单元上进行执行,例如 web 服务器、FTP 服务器等,从而共同完成工作任务。

配置负载均衡

upstream tomcat-portal {
  server 192.168.00.000:8080;
  server 192.168.00.000:8180;
  server 192.168.00.000:8280;
}
server {
  listen 80;
  server_name www.example.com;
  location / {
    proxy_pass http://tomcat-portal;
    index index.html
  }
}

此时,用浏览器访问 http://www.example.com 就会有三台服务器负载这个页面,并且三台服务出现的概率相同,交替出现。

如果其中一台服务器性能比较好,想让其承担更多的压力,可以通过 weight 设置权重。

upstream tomcat-portal {
  server 192.168.00.000:8080;
  server 192.168.00.000:8180 weight=2;
  server 192.168.00.000:8280;
}

此时,用浏览器访问 http://www.example.com 第一台和第三台服务器出现的概率各为25%,第二台服务器出现的概率为50%。

上一篇下一篇

猜你喜欢

热点阅读