内容目录

Nginx代理概述

什么是代理

  • 代理代理,代为办理,对于代理一词而言,我们并不陌生,在我们日常生活中常常用到。
  • 比如代理理财、代理租房、代理收货等等。

file

无代理场景

  • 在没有使用代理的场景下,客户端都是直接请求服务端,服务端直接响应客户端。
  • 比如:抖音在初创阶段时没太多人关注,单台服务器足以支撑业务运行。但随着事件推移,抖音迅速蹿红,那么此时单台服务器难以支撑海量的用户请求,甚至一度造成服务瘫痪。

file

有代理场景

  • 在使用代理的场景下,客户端无法直接向服务端发起请求,需要先请求代理服务,由代理服务代为请求后端节点,以实现客户端与后端通信。
  • 使用代理会增加网络延迟,但能提高系统整体的响应,以此承担海量的并发请求。

file

Nginx正向代理

  • 正向代理,(内部上网)客户端 <--> 代理 -> 服务端

file

客户端科学上网

比如:科学的方式访问Google

file

客户端提速

比如:游戏加速器

file

客户端缓存

比如:下载资源,可以先查看代理服务是否有,如果有直接通过代理获取

file

客户端授权

很多公司为了安全,连接外网需要通过防火墙,防火墙可以配置规则,允许谁可以上外网,谁不可以上外网。

file

Nginx反向代理

  • 反向代理,用于公司集群架构中,客户端 -> 代理 <--> 服务端

file

路由功能

根据用户请求的URI调度到不通的功能的集群服务器进行处理

file

负载均衡

将用户发送的请求,通过负载均衡调度算法挑选一台合适的节点进行请求处理

file

动静分离

根据用户请求的URI进行区分,请动态资源调度至应用服务器处理,将静态资源调度至静态资源服务器处理

file

数据缓存

将后端查询的数据存储至反向代理上缓存,可以加速用户获取资源。

file

正向与反向代理区别

  • 区别在于形式上服务的对象不一样,其次架设的位置点不一样
    • 正向代理的对象是客户端,为客户端服务
    • 反向代理的对象是服务端,为服务端服务
    • user --> 正向代理(路由器) --> 反向代理(缓存) --> 服务器

Nginx可代理的协议

Nginx支持代理的协议

  • nginx作为代理服务,支持的代理协议非常额多,如下图所示

Nginx常用的代理协议

  • 通常情况下,我们将nginx作为反向代理,常常会用到如下几种代理协议,如下图所示

Nginx反向代理实践

最后修改日期: 2025年7月28日

留言

撰写回覆或留言

发布留言必须填写的电子邮件地址不会公开。