Nginx的负载均衡和反向代理原理实现详解

6 篇文章 0 订阅
2 篇文章 0 订阅

CSDN话题挑战赛第2期
参赛话题:Java技术分享

目录

1.Nginx配置文件结构        

1.1整体结构介绍

 2.Nginx的应用

2.1.Nginx上部署静态资源文件

 2.2反向代理

 2.3.负载均衡


1.Nginx配置文件结构        

1.1整体结构介绍

Nginx配置文件(/usr/local/nginx/conf/nginx.conf)整理分为三部分:

     全局块            和Nginx运行相关的全局配置

     events块       和网络连接相关的配置

     Http块            代理,缓存,日志记录,虚拟机配置

            http全局块

            Server块

                    service全局块

                     location块

如下图所示:

 2.Nginx的应用

Nginx其实和tomcat一样也是一种服务器,当然也就能在上面进行部署服务啦,下面将详细介绍如何部署静态资源文件,为何要在Nginx下面部署静态资源文件呢,为何不在tomcat上部署呢?是因为Nginx上部署静态资源文件比在tomcat上部署效率更高!

2.1.Nginx上部署静态资源文件

在Nginx上部署静态资源文件,只需要将文件复制到Nginx安装目录(usr/local/nginx)下的html目录中即可。然后启动Nginx输入{ip/文件名.html}就能访问到对应的页面

下面对照配置文件重点讲解在配置文件是如何实现的,其中红色部分是固定写法,黑色部分是可以根据自己的需求进行配置的

 下面是更为通俗的注释

 2.2反向代理

反向代理服务器是位于目标服务器之间,用户将请求发到反向代理服务器上,反向代理服务器将请求转发给目标服务器,在这个过程中用户并不知道目标服务器,这也是和正向代理服务器得一大区别之一。

反向代理和正向代理得区别:

反向代理其实是代理得服务端。简而言之用户并不知道又目标服务器得存在,只需要访问反向代理服务器就能得到用户想要得请求资源,而反向代理服务器会用自己得方式去请求数据,用户并不需要去关心是如何请求得。正所谓反其道而行之。

正向代理服务器其实是代理得客户端。用户将请求发到代理服务器上,代理服务器在原封不动得将请求发给目标服务器,中间不会做任何操作。

如下图配置反向代理,红色字体则是配置反向代理服务器

 2.3.负载均衡

   早期得网站流量和业务功能都比较简单,单台服务器就可以满足基本需求,但是随着互联网得发展,业务流量越来越大且业务越来越复杂,单台服务器得性能及单点故障问题就凸显出来了,因此需要多台服务器组成应用集群,进行性能得水平扩展以及避免单点故障出现。

  • 应用集群:将同一应用部署到多台机器上,组成应用集群,接收负载均衡分发得请求,进行业务处理并返回响应数据。
  • 负载均衡器:将用户请求根据对应得负载均衡算法分发到应用集群中得一台服务器进行处理

如图:将用户请求发到负载均衡器上,然后再由负载均衡器分发到Web服务器上,其实这也就是基于反向代理进行请求得方式

负载均衡配置如图所示:

upstream下定义一组服务器也就是上面得Web服务器,然后再配置反向代理得请求路径,其实也就是刚刚上面定义得upstream一组服务器,之后就能将请求将默认遵循轮询得分发机制进行分发到两台服务器上,当然也可以进行手动得配置权重进行分发。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值