正向代理和Nginx反向代理配置以及Nginx负载均衡机制配置解析

270 阅读3分钟

本文已参与「新人创作礼」活动, 一起开启掘金创作之路。

正向代理

就是客户端请求代理服务器,请求转发访问服务器互联网 在这里插入图片描述

反向代理

反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。 简单来说就是Nginx服务器通过接收internet上的请求,将请求给到服务器就是反向代理 在这里插入图片描述在这里插入图片描述 ==配置反向代理== (1) 将网站首页页面部署到tomcat中(ROOT目录),上传到服务器。 (2)启动TOMCAT,输入网址http://192.168.25.141:8080可以看到网站首页 配置反向代理 (1)在Nginx主机修改 Nginx配置文件 upstream tomcat-portal { server 192.168.25.141:8080; } server { listen 80; server_name www.xxx.com;
location / { proxy_pass http://tomcat-portal; index index.html; } } (2)重新启动Nginx 然后用浏览器测试: www.xxx.com (此域名须配置域名指向)

Nginx负载均衡

什么是负载均衡 负载均衡 建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。 负载均衡,英文名称为Load Balance,其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。 配置负载均衡-准备工作 (1)将刚才放有首页工程的tomcat复制两份,端口分别为8180 和8280 。 (2)分别启动这两个tomcat服务器的tomcat服务。 (3)为了能够区分是访问哪个服务器的网站,可以在首页标题加上标记以便区分。 配置负载均衡 修改 Nginx配置文件: upstream tomcat-portal { server 192.168.25.141:8080; server 192.168.25.141:8180; server 192.168.25.141:8280; } server { listen 80; server_name www.xxx.com;

    location / {
        proxy_pass   http://tomcat-portal;
        index  index.html;
    }       
   
}

地址栏输入www.xxx.com/ 刷新观察每个网页的标题,看是否不同。 经过测试,三台服务器出现的概率各为33.3333333%,交替显示。 如果其中一台服务器性能比较好,想让其承担更多的压力,可以设置权重。 比如想让NO.1出现次数是其它服务器的2倍,则修改配置如下: upstream tomcat-portal { server 192.168.25.141:8080; server 192.168.25.141:8180 weight=2; server 192.168.25.141:8280; } 经过测试,每刷新四次,有两次是8180 五种负载均衡算法 1.round robin(默认) 轮询方式,依次将请求分配到各个后台服务器中,默认的负载均衡方式。 适用于后台机器性能一致的情况。 挂掉的机器可以自动从服务列表中剔除。 2.weight 根据权重来分发请求到不同的机器中,指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。
3.ip_hash 根据请求者ip的hash值将请求发送到后台服务器中,可以保证来自同一ip的请求被打到固定的机器上,可以解决session问题。 4.url_hash(第三方) 根据请求的url的hash值将请求分到不同的机器中,当后台服务器为缓存的时候效率高。 5.fair(第三方) 根据后台响应时间来分发请求,响应时间短的分发的请求多。