• Nginx 反向代理流程


                                  Nginx 反向代理流程
      反向代理:使用代理服务器来接受internet上的连接请求,然后将请求转发给内部网络中的上游服务器,并将上游服务器得到的结果返回给请求连接的客户端,代理服务器对外表现就是一个web服务器。Nginx就经常拿来做HTTP反向代理服务器。
      Nginx具有强悍的高并发高负载能力,所以一般会作为前端服务器直接向客户端提供静态文件服务。但是一些复杂、多变的业务不适合放Nginx上,一般会使用Apache、Tomcat等服务器来处理。因此,Nginx一般会作为静态web服务器与反向代理服务器,将不适合自己处理的请求转发给上游服务器处理。
    Nginx代理服务器处理过程:
    1.接受HTTP请求,将用户的请求(包括HTTP包体)完整的接受到Nginx服务器的磁盘或者内存中。
    2.向上游服务器发起连接
    3.将缓存的客户端请求转发到上游服务器
     
      Nginx的这种转发方式与Squid等代理服务器的处理方式不同,Squid是一边接收客户端请求,一边将请求转发到上游服务器。相比之下,Nginx延长了一个请求处理的时间,并且增加了用于缓存请求内容的内存和磁盘空间。但是Nginx有效的降低了上游服务器的负载,将压力放在了Nginx服务器上。
      那么Nginx的这种机制是如何降低上游服务器的负载的呢?通常情况下,客户端与Nginx代理服务器走公网,代理服务器与上游服务器之间走内网。如果一边接受客户端请求,一般将请求转发到上游服务器的话,上游服务器需要长时间的保存这个连接,增加上游服务器的并发压力。但是如果是接受到完整请求之后,再转发给上游服务器的话,内网的速度更快,不需要那么长的时间保持连接,可以减低上游服务器的并发压力。
  • 相关阅读:
    只使用代码创建WPF程序
    C#第一课
    VMware虚拟机的网络设置
    mac系统下配置Eclipse Java/C++ 开发环境
    【读书笔记】【物联网】《物物连起大世界物联网的应用与前景》
    移动硬盘无法格式化
    Win7下chm文件打不开的解决办法[转]
    MapInfo数据到ARCGIS数据Shapefile的转换
    mapx不具开发功能
    [读书笔记]熟悉SQLPLUS Oracle数据库环境
  • 原文地址:https://www.cnblogs.com/52why/p/13292736.html
Copyright © 2020-2023  润新知