Nginx网关、反向、正向代理介绍(系列篇05)

秋意零 2024-5-9 248 5/9

Nginx网关、反向、正向代理介绍(系列篇05)

大家好,我是秋意零。

反向代理

反向代理是代理到服务端

Nginxd代理服务器接收来自互联网上用户的HTTP请求,并将这些请求转发给内部网络中的一个或多个服务器。这些内部服务器通常是Web服务器,负责处理请求并生成响应。Nginx收到内部服务器的响应后,再将这些响应返回给最初的互联网用户。

在这个过程中,外部用户只与Nginx交互,对内部网络结构和实际处理请求的服务器并不直接感知。

应用场景

负载均衡:Nginx可以根据不同的策略(如轮询、最少连接数、哈希等)将请求分发到多个后端服务器,从而实现负载均衡,提高系统的处理能力和可用性。

隐藏内部架构:外部用户只能看到Nginx代理服务器的IP地址,内部服务器的详细信息和结构得以保护,增强了安全性。

SSL卸载:Nginx可以处理HTTPS请求的加密和解密,减轻后端服务器的负担,即在Nginx上完成SSL/TLS握手,然后以未加密的形式将请求转发给后端服务器。

缓存静态内容:Nginx可以缓存静态文件或响应结果,对于频繁请求且内容不变的数据,可以直接从缓存中快速提供,提升响应速度。

请求过滤与修改:Nginx可以作为一道屏障,根据规则过滤请求,比如拒绝某些IP的访问,或者修改请求头和内容再转发,实现更灵活的控制。

故障转移:当某个后端服务器不可用时,Nginx可以自动将流量重定向到其他健康服务器,保证服务连续性。

内容路由:基于URL路径、主机名或其他条件,Nginx可以将请求路由到不同的后端服务,实现复杂的微服务架构部署。

Nginx网关、反向、正向代理介绍(系列篇05)

正向代理

正向代理是代理到客户端

Nginx正向代理主要服务于客户端,帮助它们克服访问外部资源时遇到的种种障碍。

Nginx正向代理是指Nginx服务器作为客户端和目标服务器之间的中介,帮助客户端访问外部网络资源的过程。在这种配置下,客户端通常处于受限的网络环境中,不能直接访问目标服务器(例如,因防火墙限制、地理位置限制或需要身份验证的资源)。

比如:我们内部用户需要上网,不能直接通外网,需要通过正向代理服务器才能上网。

应用场景

访问控制:企业或组织可以利用正向代理实施访问策略,比如内容过滤、审计或限制对特定网站的访问。

身份隐藏:客户端的真实IP地址被代理服务器的IP所替代,有助于保护客户端的隐私。

突破网络限制:在存在网络限制的环境下,正向代理可以帮助用户访问原本无法直接访问的外部资源。

缓存和加速:正向代理还可以缓存经常访问的内容,减少网络延迟和带宽消耗。

Nginx网关、反向、正向代理介绍(系列篇05)

网关

Nginx不仅仅是一个高性能的Web服务器,它还常被用作API网关。

比如,咱们家庭网络需要通外网,需要路由器转发出去,那这个路由器就是一个网关。和正向代理拓扑图一样,正向代理的代理服务器也是网关。

Nginx网关、反向、正向代理介绍(系列篇05)

隧道式模型

Nginx代理模式非常明显,就是隧道式模型。简单点就是一进一出,所有请求都是经过该代理,所有该服务器的带宽决定了速度因素。

如何解决?

LVS(负载均衡器):通过DR模型,就是后端服务器返回的时候直接放回到客户端,不经过Nginx代理服务器。请求流程不变。

LVS更高性能的负载均衡器,比Nginx还要高,但功能比较单一。在做代理服务器的时候可以做隧道式的代理和DR式的代理。

架构图

Nginx网关、反向、正向代理介绍(系列篇05)
传统企业架构图

这篇文章有用吗?

点击星号为它评分!

平均评分 0 / 5. 投票数: 0

到目前为止还没有投票!成为第一位评论此文章。

很抱歉,这篇文章对您没有用!

让我们改善这篇文章!

告诉我们我们如何改善这篇文章?

- THE END -

秋意零

5月09日20:29

最后修改:2024年5月9日
1

非特殊说明,本博所有文章均为博主原创。

共有 0 条评论