【Nginx】——反向代理
反向代理
reverse proxy,指用代理服务器来接收Internet上的链接请求,然后将请求转发给内部网络中的上游服务器,并将从上游服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器对外的表现就是一个Web服务器。
Nginx的这种反向代理方案主要是为了降低服务器的并发压力。
Nginx作为HTTP反向代理服务器
Nginx通常会被配置为既是静态Web服务器,也是反向代理服务器,如果请求不适合Nginx处理,则其会将请求直接转发到上游服务器中处理。
图示:
转发请求流程
1.客户端发来HTTP请求;
2.Nginx并不会立刻将该请求转发到上游服务器,Nginx先把用户的请求完整地接收到Nginx所在服务器的硬盘或者内存;
3.向上游服务器发起连接;
4.把缓存的客户端请求转发到上游服务器。
(Squid等代理服务器:一边接收客户端请求,一边转发到上游服务器)
缺点
延长了一个请求的处理时间,并增加了用于缓存请求内容的内存和磁盘空间
优点
降低了上游服务器的负载,尽量把压力放在Nginx服务器上