vlambda博客
学习文章列表

浅谈Nginx之反向代理与负载均衡


浅谈Nginx之反向代理与负载均衡
浅谈Nginx之反向代理与负载均衡




  都说遇见一个人需要一秒钟,与一个人像是需要一分钟,而你在阅读这篇文章的几分钟里,也许作用微乎其微,但我相信那一定不是虚度。


浅谈Nginx之反向代理与负载均衡
Nginx的反向代理和负载均衡

 

浅谈Nginx之反向代理与负载均衡
Nginx入门

关于Nginx的入门我们已经在上一期中讲了Nginx部署静态网站,详情点击下方链接了解


浅谈Nginx之反向代理与负载均衡
Nginx的反向代理


什么是反向代理

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

首先我们先理解正向代理,如下图:

浅谈Nginx之反向代理与负载均衡

正向代理是针对你的客户端,而反向代理是针对服务器的,如下图

浅谈Nginx之反向代理与负载均衡

浅谈Nginx之反向代理与负载均衡

配置反向代理的准备工作:将项目部署到Tomcat中,上传到服务器,

配置反向代理:

(1)Nginx主机修改 Nginx配置文件

 upstream tomcat-travel{     server 192.168.177.129:8080;#服务器的ip地址 }
server { listen 80; # 监听的端口 server_name www.test.com; # 域名或ip location / { # 访问路径配置 # root index;# 根目录 proxy_pass http://tomcat-travel; index index.html index.htm; # 默认首页 }}

(2)重新启动Nginx, 然后用浏览器测试:http://www.test.com (此域名须配置域名指向),即可访问到动态web项目


浅谈Nginx之反向代理与负载均衡
Nginx的负载均衡

http:// 192.168.1.62:8080

http:// 192.168.1.63:8081

http:// 192.168.1.64:8082

Nginx主机修改 Nginx配置文件

upstream tomcat-test {     server 192.168.1.62:8080;     server 192.168.1.63:8081;     server 192.168.1.64:8082; }
server { listen 80; # 监听的端口 server_name www.hmtravel.com; # 域名或ip location / { # 访问路径配置 # root index;# 根目录 proxy_pass http://tomcat-test;
index index.html index.htm; # 默认首页 } error_page 500 502 503 504 /50x.html; # 错误页面 location = /50x.html { root html; } }

经过测试,三台服务器出现的概率各为33.3333333%,交替显示。

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

比如想让NO.1出现次数是其它服务器的2倍,则修改配置如下:

 upstream tomcat-travel { server 192.168.1.62:8080;     server 192.168.1.63:8081 weight=2; server 192.168.1.64:8082; }

经过测试,每刷新四次,有两次是8081;

这样负载均衡就配置完成@


好了,今天的分享就到这里了,我们明天再见!

浅谈Nginx之反向代理与负载均衡

往 期 精 选:


■ 


             长按二维码获取更多精彩吧!


  【 CodeChen


点个再看,留下你的足迹吧!