Nginx之反向代理与负载均衡

Nginx之反向代理与负载均衡

经验文章nimo972025-06-10 15:56:375A+A-

今天我们一起学习一下反向代理

Nginx的反向代理分为http七层的反向代理和四层的反向代理(stream)。

在学习反向代理的过程中会引出两个概念:

1. 负载均衡

2. 缓存


一个请求的顺序是先到达Nginx->上游服务->返回到客户端。

我们先来看下负载均衡:


可以从图中看到不同客户端的请求会按照不同的策略,打到不同的应用服务器上。

这时候可能服务器2 宕机了,又扩容了一个服务器4。

这样就给这个应用服务集群提高了CAP中的A 可用性。包括了容灾,扩容。

而负载均衡是实现整个服务可用性的重要手段。


我们现在看一下可扩展性是怎样通过负载均衡来保证的。




有了反向代理后,我们又会引出另一个概念--缓存。

缓存也分为2类:

时间缓存:比如现在有一个用户访问了index.html,请求到达Nginx,Nginx没有这个内容,就会去应用服务器获取内容,然后Nginx会做2件事情。先把内容返回给客户端,然后把内容缓存在Nginx所在的服务器。这样等下次再请求这个内容的时候,Nginx发现这个内容已经缓存了,而且是在缓存有效期之内,它就不用去应用服务器,直接返回给客户端,这样就减少了整个请求的环节,而且Nginx的性能要比应用服务器的性能更好。

空间缓存:当一个请求去访问后端一些内容的时候,Nginx可以加快速度预取一些响应的内容放在Nginx上面,这个使用相对比较少。

点击这里复制本文地址 以上内容由nimo97整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
qrcode

尼墨宝库 © All Rights Reserved.  蜀ICP备2024111239号-7